柱状/条形图(Bar)

柱状/条形图提供了一种以竖线表示数据值的显示方式。用来显示数据趋势,并排比较多个数据集。

示例用法

  1. var myBarChart = new Chart(ctx, {
  2. type: "bar",
  3. data: data,
  4. options: options
  5. });

数据集属性

柱状/条形图允许为每个数据集指定一些属性用于显示特定数据集。一些属性可以被指定为一个数组。如果这些设置为数组值,则第一个值应用于第一个节点,第二个值应用于第二个节点,依此类推。

名称类型描述
labelString在图例和工具提示中显示的数据集标签
xAxisIDString绘制此数据集的 x 轴的 ID。如果未指定,则默认为第一个找到的 x 轴的 ID 。
yAxisIDString绘制该数据集的 y 轴的 ID。如果未指定,则默认为第一个找到的 y 轴的 ID。
backgroundColorColor/Color[]柱状/条形图填充色. 参考 颜色(Colors)
borderColorColor/Color[]边框色 参考 颜色(Colors)
borderWidthNumber/Number[]边框宽度(以像素为单位)
borderSkippedString不绘制边框 更多…
hoverBackgroundColorColor/Color[]悬浮时的填充色
hoverBorderColorColor/Color[]悬浮时的边框色
hoverBorderWidthNumber/Number[]悬浮时边框宽度

borderSkipped

此设置用于避免基线被填充。一般来说,除非创建从柱状/条形图派生的图表类型,否则不需要更改。

选项:

  • 'bottom'
  • 'left'
  • 'top'
  • 'right'

配置选项

柱状/条形图定义了以下配置选项。这些选项与全局图表配置选项Chart.defaults.global合并,形成最终传递给图表的选项。

名称类型默认值描述
barPercentageNumber0.9在 category 百分比内,每条 bar 的百分比(0-1)。如果设置为 1,则将使用 category 的整个宽度 更多…
categoryPercentageNumber0.8每个数据点可用宽度的百分比更多…
barThicknessNumber手动设置每个 bar 的宽度像素。如果未设置,则使用 barPercentagecategoryPercentage 自动调整大小;
maxBarThicknessNumber设置该选项确保自动调整尺寸的 bar 的大小。仅当barThickness未设置时才能使用(自动调整大小已启用)。
gridLines.offsetGridLinesBooleantrue如果为 true,则特定数据点的条形落在网格线之间。如果为 false,网格线将直接位于网格中间。更多…

offsetGridLines

如果为 true,则特定数据点的条形落在网格线之间。如果为 false,网格线将直接位于网格中间。在实际项目中这是不太可能需要改变的。一般通过不同的配置来重复使用。

此设置适用于条形图的轴配置。需要为每个新添加到图表中的轴设置此设置。

  1. options = {
  2. scales: {
  3. xAxes: [
  4. {
  5. gridLines: {
  6. offsetGridLines: true
  7. }
  8. }
  9. ]
  10. }
  11. };

默认选项

通常要将配置设置应用于所有创建的条形图。全局条形图设置存储在Chart.defaults.bar中。更改全局选项只会影响更改后创建的图表。现有图表不会更改。

barPercentage vs categoryPercentage

以下显示了百分比选项与类别百分比选项之间的关系。

  1. // categoryPercentage: 1.0
  2. // barPercentage: 1.0
  3. Bar: | 1.0 | 1.0 |
  4. Category: | 1.0 |
  5. Sample: |===========|
  6. // categoryPercentage: 1.0
  7. // barPercentage: 0.5
  8. Bar: |.5| |.5|
  9. Category: | 1.0 |
  10. Sample: |==============|
  11. // categoryPercentage: 0.5
  12. // barPercentage: 1.0
  13. Bar: |1.||1.|
  14. Category: | .5 |
  15. Sample: |==============|

数据结构

条形图数据集的data属性被指定为一个数字数组。数据数组中的每个点对应于 x 轴上相同索引处的标签。

  1. data: [20, 10];

堆积条形图

条形图可以通过改变 X 轴和 Y 轴上的设置来启用堆叠,将其配置为堆叠条形图。堆积的条形图可以用来显示一个数据系列是如何由许多小块构成的。

  1. var stackedBar = new Chart(ctx, {
  2. type: "bar",
  3. data: data,
  4. options: {
  5. scales: {
  6. xAxes: [
  7. {
  8. stacked: true
  9. }
  10. ],
  11. yAxes: [
  12. {
  13. stacked: true
  14. }
  15. ]
  16. }
  17. }
  18. });

数据集属性

以下数据集属性特定于堆叠条形图。

名称类型描述
stackString该数据集所属的组的 ID(堆叠时,每个组将是一个单独的 stack)

水平条形图

水平条形图是垂直条形图上的变体。它有时用来显示趋势数据,并排比较多个数据集。

示例

  1. var myBarChart = new Chart(ctx, {
  2. type: "horizontalBar",
  3. data: data,
  4. options: options
  5. });

配置选项

水平条形图的配置选项与条形图(bar)相同。但是,任何在条形图中 x 轴上指定的选项都将应用于水平条形图中的 y 轴。

默认的水平栏配置选项在Chart.defaults.horizo​​ntalBar中设置。