问题描述
饼图第一次绘制的时候,希望能够突出显示一个区块,该如何配置?
解决方案
- 首先,需要在图表 spec 配置中,设置 selected 状态下的图形样式:
pie: {
state: {
selected: {
outerRadius: 0.85,
stroke: '#000',
lineWidth: 1
}
}
},
- 通过 setSelected API 来设置默认选中的数据项
const vchart = new VChart(spec, { dom });
vchart.renderSync();
vchart.setSelected({
// one data record
})
代码示例
const spec = {
type: 'pie',
data: [
{
id: 'id0',
values: [
{ type: 'oxygen', value: '46.60' },
{ type: 'silicon', value: '27.72' },
{ type: 'aluminum', value: '8.13' },
{ type: 'iron', value: '5' },
{ type: 'calcium', value: '3.63' },
{ type: 'sodium', value: '2.83' },
{ type: 'potassium', value: '2.59' },
{ type: 'others', value: '3.5' }
]
}
],
outerRadius: 0.8,
innerRadius: 0.5,
padAngle: 0.6,
valueField: 'value',
categoryField: 'type',
pie: {
state: {
selected: {
outerRadius: 0.85,
stroke: '#000',
lineWidth: 1
}
}
},
};
const vchart = new VChart(spec, { dom: CONTAINER_ID });
vchart.renderSync();
vchart.setSelected({ type: 'oxygen'})
// Just for the convenience of console debugging, DO NOT COPY!
window['vchart'] = vchart;
结果展示
相关文档
- github:github.com/VisActor/VC…
- 相关 demo:visactor.io/vchart/demo…