Skip to content

Heatmap Chart ^0.1.18 ​

Color-coded matrix for density, correlation, or temporal patterns. Accepts 2D arrays or flat { x, y, value } cells.

Basic ​

Product AProduct BProduct CQ1Q2Q3Q41218814221692018141125
8
25
vue
<VxHeatmapChart
  :data="[
    [12, 18, 8, 14],
    [22, 16, 9, 20],
    [18, 14, 11, 25],
  ]"
  :xLabels="['Q1','Q2','Q3','Q4']"
  :yLabels="['Product A','Product B','Product C']"
  showValues
/>

Activity by hour / day ​

MonTueWedThuFriSatSun000306091215182110041218146000514201671016152217800041319156211516242010534101822181242381418148
0
24
vue
<VxHeatmapChart
  :data="activity"
  :xLabels="['00','03','06','09','12','15','18','21']"
  :yLabels="['Mon','Tue','Wed','Thu','Fri','Sat','Sun']"
  showValues
  colorStart="#f0fdf4"
  colorEnd="#16a34a"
/>

Sales per country / month ​

USACanadaBrazilUKGermanyJapanIndiaJanFebMarAprMayJunJulAugSepOctNovDec
0
97
vue
<VxHeatmapChart :data="sales" :xLabels="months" :yLabels="countries" />

Correlation matrix ​

RevGDPPopCostEduTechRevGDPPopCostEduTech10.850.32-0.140.080.550.8510.41-0.080.120.480.320.4110.220.360.28-0.14-0.080.2210.18-0.120.080.120.360.1810.250.550.480.28-0.120.251
-1
1
vue
<VxHeatmapChart
  :data="correlation"
  :xLabels="vars"
  :yLabels="vars"
  showValues
  colorStart="#fee2e2"
  colorEnd="#7c3aed"
  :min="-1"
  :max="1"
/>

GitHub-style contributions ​

0
12
vue
<VxHeatmapChart
  :data="githubMatrix"
  :cellSize="12"
  :cellGap="3"
  :cellRadius="2"
  :axis="false"
  colorStart="#f1f5f9"
  colorEnd="#16a34a"
/>

No gaps (tight grid) ​

USACanadaBrazilUKGermanyJapanIndiaJanFebMarAprMayJunJulAugSepOctNovDec
0
97
vue
<VxHeatmapChart :data="data" :cellGap="0" :cellRadius="0" />

Custom gradient ​

MonTueWedThuFriSatSun0003060912151821
0
24
vue
<VxHeatmapChart :data="data" colorStart="#fdf4ff" colorEnd="#c026d3" />

Flat cell format ​

AliceBobMonTueWed869758
5
9
vue
<VxHeatmapChart
  :data="[
    { x: 'Mon', y: 'Alice', value: 8 },
    { x: 'Tue', y: 'Alice', value: 6 },
    ...
  ]"
  :xLabels="['Mon','Tue','Wed']"
  :yLabels="['Alice','Bob']"
  showValues
/>

Props ​

PropTypeDefaultDescription
datanumber[][] | HeatmapCell[][]2D matrix or flat cells
xLabels / yLabels(string | number)[][]Column/row names
heightnumberautoOverride SVG height
cellSizenumberautoOverride cell size
cellGapnumber2Gap between cells
cellRadiusnumber3Corner radius
colorStartstring#eef2ffGradient start
colorEndstring#4f46e5Gradient end
nullColorstringvar(--muted)Missing-cell color
min / maxnumberautoForce color domain
showValuesbooleanfalsePrint value in cell
axisbooleantrueShow labels
tooltipbooleantrueShow hover tooltip
legendbooleantrueShow color legend

Events ​

EventPayload
hover{ row, col, value }
click{ row, col, value }