圖表

圖表元件基於 Chart.js,一個開源的 HTML5 圖表庫。


import Chart from 'primevue/chart';

圖表元件使用底層的 Chart.JS,因此需要將其安裝為依賴項。


npm install chart.js

圖表透過 3 個屬性進行配置;typedataoptions。圖表類型使用 type 屬性定義,它接受 piedoughtnutlinebarradarpolarArea 作為值。data 定義以圖表表示的數據集,而 options 提供眾多自訂選項來自訂呈現方式。


<Chart type="bar" :data="chartData" :options="chartOptions" />

圓餅圖是一種圓形統計圖,它被分成幾塊,以說明數值比例。


<Chart type="pie" :data="chartData" :options="chartOptions" class="w-full md:w-[30rem]" />

甜甜圈圖是圓餅圖的變體,中心為空白,允許包含關於整體數據的額外資訊。


<Chart type="doughnut" :data="chartData" :options="chartOptions" class="w-full md:w-[30rem]" />

長條圖或柱狀圖是一種圖表,它用矩形長條表示分組數據,長條的長度與它們代表的值成比例。


<Chart type="bar" :data="chartData" :options="chartOptions" class="h-[30rem]"  />

indexAxis 選項設定為 y 時,長條圖會以水平方式呈現。


<Chart type="bar" :data="chartData" :options="chartOptions" class="h-[30rem]"  />

當尺度的 stacked 選項啟用時,長條可以彼此堆疊。


<Chart type="bar" :data="chartData" :options="chartOptions" class="h-[30rem]" />

折線圖是一種圖表,它將資訊顯示為一系列稱為「標記」的數據點,這些數據點由直線段連接。


<Chart type="line" :data="chartData" :options="chartOptions" class="h-[30rem]" />

可以使用 scales 選項新增多個軸。


<Chart type="line" :data="chartData" :options="chartOptions" class="h-[30rem]" />

可以自訂線條系列的各種樣式,以顯示諸如面積圖之類的自訂。


<Chart type="line" :data="chartData" :options="chartOptions" class="h-[30rem]" />

極地區域圖類似於圓餅圖,但每個區段的角度相同 - 區段的半徑會根據值而不同。


<Chart type="polarArea" :data="chartData" :options="chartOptions" class="w-full md:w-[30rem]" />

雷達圖是一種以二維圖表形式顯示多變量數據的圖形方法,其中三個或多個定量變量在從同一個點開始的軸上表示。


<Chart type="radar" :data="chartData" :options="chartOptions" class="w-full md:w-[30rem]" />

不同的圖表類型可以在同一個圖形中使用數據集的 type 選項組合。


<Chart type="bar" :data="chartData" :options="chartOptions" class="h-[30rem]" />

螢幕閱讀器

圖表元件在內部使用 canvas 元素,請參閱 Chart.js 無障礙 指南以獲取更多資訊。可以使用 canvasProps 屬性自訂 canvas 元素,以定義 aria 角色和屬性,此外,元件內的任何內容都會直接作為 canvas 的子項傳遞,以便能夠提供諸如表格之類的後備內容。


<Chart type="line" :data="data" :canvasProps="{'role': 'img', 'aria-label': 'Data'}" />