Renders a Chart.js-powered chart. Supports line, bar, doughnut, pie, radar, polar area, bubble and scatter types.
. chartType ( ChartType . line )
. chartData ( ChartData . builder ()
. labels ( List . of ( " Jan " , " Feb " , " Mar " , " Apr " ))
. datasets ( List . of ( ChartDataset . builder ()
. data ( List . of ( 1000d , 1500d , 1200d , 1800d ))
Property Type Default Description chartTypeChartTypebar Chart variety chartDataChartData— Labels and datasets chartOptionsChartOptions— Chart.js options object styleString ""Inline CSS — use to set height cssClassesString ""CSS class names
line, bar, doughnut, pie, radar, polarArea, bubble, scatter
Property Type Description labelsList<String>Category labels on the axis datasetsList<ChartDataset>One dataset per series
Property Type Description labelString Series name (shown in the legend) dataList<Double>Data points
Property Type Description maintainAspectRatioboolean Whether the chart maintains its aspect ratio scalesChartScalesAxis scale configuration
Controlling the height. Set maintainAspectRatio(false) and give the component an explicit
height via style (e.g. style("width: 100%; height: 200px;")) — the renderer sizes the canvas
to the host, so the chart takes exactly that height. With the default aspect ratio, a full-width
chart grows proportionally tall (a 1400 px-wide bar chart would be ~700 px tall).
. chartType ( ChartType . line )
. chartData ( ChartData . builder ()
. labels ( List . of ( " Mon " , " Tue " , " Wed " , " Thu " , " Fri " ))
. datasets ( List . of ( ChartDataset . builder ()
. data ( List . of ( 12d , 19d , 3d , 5d , 2d ))
. chartOptions ( ChartOptions . builder ()
. maintainAspectRatio ( false )
. scales ( ChartScales . builder ()
. y ( ChartAxisScale . builder () . beginAtZero ( true ) . build ())
. chartType ( ChartType . doughnut )
. chartData ( ChartData . builder ()
. labels ( List . of ( " Scrap " , " In progress " , " Done " ))
. datasets ( List . of ( ChartDataset . builder ()
. data ( List . of ( 5d , 12d , 30d ))
. chartType ( ChartType . bar )
. chartData ( ChartData . builder ()
. labels ( List . of ( " Q1 " , " Q2 " , " Q3 " , " Q4 " ))
ChartDataset . builder () . label ( " 2023 " ) . data ( List . of ( 100d , 120d , 90d , 150d )) . build () ,
ChartDataset . builder () . label ( " 2024 " ) . data ( List . of ( 110d , 130d , 100d , 160d )) . build ()