VISALL 饼图 (Pie Chart) 使用文档
简介
饼图组件是VISALL数据可视化库中的重要图表类型之一,用于展示数据各部分占整体的比例关系。该组件支持普通饼图、玫瑰图及环形图等多种展现形式,能够有效呈现占比数据。
基本用法
import { render } from 'path/to/bundle.esm.min.js';
// 创建饼图
const chart = render(container, {
layers: [
{
type: 'pie',
dataIndex: 0,
encoding: {
x: '类别', // 分类字段名
y: '数值' // 数值字段名
}
}
],
data: [
{
values: [
{ 类别: '类别A', 数值: 320 },
{ 类别: '类别B', 数值: 120 },
{ 类别: '类别C', 数值: 220 },
// ...更多数据
]
}
]
});
配置参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| encoding.x | string | - | 分类映射字段,必须提供一个字符串类型字段 |
| encoding.y | string | - | 数值映射字段,必须是数值类型 |
| dataIndex | number | 0 | 指定使用的数据集索引 |
| roseType | boolean/string | false | 是否启用玫瑰图模式,可选值为 true, false, 'radius', 'area' |
| radius | string/string[] | - | 饼图半径,可以是具体数值 或百分比,如 '50%' 或 ['40%', '70%'](环形图) |
数据要求
- X轴字段要求为字符串类型,表示分类
- Y轴字段要求为数值类型,表示数量或比例
- 数据量建议介于2-10条之间,过多会导致可读性下降
- 数据中不应有重复的分类值
高级用法
1. 环形图
通过设置半径范围,可以创建环形图:
{
type: 'pie',
encoding: {
x: '类别',
y: '数值'
},
radius: ['40%', '70%']
}
2. 玫瑰图
当需要同时比较各类别的绝对数值与比例时,可以使用玫瑰图:
{
type: 'pie',
encoding: {
x: '类别',
y: '数值'
},
roseType: true // 或 'radius'/'area'
}