문서 › 차트 종류
달력 히트맵
날마다의 값을 주 단위 격자로: 학습·출석·커밋 잔디.
type: 'calendar' 는 [날짜, 값] 짝(또는 날짜 labels + 숫자)을 받아 한 주를 한 열로, 요일을 줄(월~일)로 그립니다. 위에는 달 이름(4월, 5월…), 왼쪽에는 요일, 아래에는 색 범례가 붙습니다. 데이터가 없는 날도 범위 안이면 빈 칸으로 그립니다.
움직이는 예제
이 예제의 코드
createChart('#chart', {
type: 'calendar',
title: '2026년 학습 기록',
unit: '분',
timeZone: 'Asia/Seoul',
data: {
series: [{
name: '학습',
data: Array.from({ length: 150 }, (_, i) => [new Date(Date.UTC(2026, 4, 1 + i)).toISOString().slice(0, 10), i % 9 === 0 ? 0 : 15 + ((i * 53) % 70)]),
}],
},
});- 날짜 문자열(
'2026-10-21')은 그 시간대의 그날입니다.Date값은timeZone으로 날짜를 정하므로 UTC 서버에서renderToSVG해도 하루 밀리지 않습니다. - 한 주는 월요일부터 시작합니다. 일요일부터 시작하려면
heatmap: { weekStart: 0 }. - 키보드: 좌·우 화살표는 한 주씩, 위·아래 화살표는 하루씩 옮깁니다. 툴팁에는
2026.10.21(수)처럼 날짜와 요일이 나옵니다. - 색은 히트맵과 같은 순차 색입니다(
heatmap.min,max,color,legend).