Echart 以特定方式配置 Pie 图例
Echart configuration for Pie legends in a particular way
我想以不同的格式显示饼图图例及其值。我附上图片。我正在寻找它,但直到现在才找到如何去做。
如果你看到图像,图例和对应的值显示我无法复制。
您想显示值而不是百分比?如果是,那么这是一个需要做的小工作,因为默认情况下图例组件不知道您数据的另一个维度。尝试从这段代码开始:
var option = {
//...
legend: {
formatter: name => {
var series = myChart.getOption().series[0];
var value = series.data.filter(row => row.name === name)[0].value
return name + ' ' + value;
},
}
}
var myChart = echarts.init(document.getElementById('main'));
var option = {
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c} ({d}%)'
},
legend: {
orient: 'vertical',
left: 10,
data: ['Category1', 'Category2', 'Category3', 'Category4', 'Category5'],
formatter: (name) => {
var series = myChart.getOption().series[0];
var value = series.data.filter(row => row.name === name)[0].value;
return name + ' ' + value;
},
},
series: [
{
name: 'Series',
type: 'pie',
label: { show: false },
labelLine: { show: false },
data: [
{value: 335, name: 'Category1'},
{value: 310, name: 'Category2'},
{value: 234, name: 'Category3'},
{value: 135, name: 'Category4'},
{value: 1548, name: 'Category5'}
]
}
]
};
myChart.setOption(option);
<script src="https://cdn.jsdelivr.net/npm/echarts@4.7.0/dist/echarts.min.js"></script>
<div id="main" style="width: 600px;height:400px;"></div>
我想以不同的格式显示饼图图例及其值。我附上图片。我正在寻找它,但直到现在才找到如何去做。 如果你看到图像,图例和对应的值显示我无法复制。
您想显示值而不是百分比?如果是,那么这是一个需要做的小工作,因为默认情况下图例组件不知道您数据的另一个维度。尝试从这段代码开始:
var option = {
//...
legend: {
formatter: name => {
var series = myChart.getOption().series[0];
var value = series.data.filter(row => row.name === name)[0].value
return name + ' ' + value;
},
}
}
var myChart = echarts.init(document.getElementById('main'));
var option = {
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c} ({d}%)'
},
legend: {
orient: 'vertical',
left: 10,
data: ['Category1', 'Category2', 'Category3', 'Category4', 'Category5'],
formatter: (name) => {
var series = myChart.getOption().series[0];
var value = series.data.filter(row => row.name === name)[0].value;
return name + ' ' + value;
},
},
series: [
{
name: 'Series',
type: 'pie',
label: { show: false },
labelLine: { show: false },
data: [
{value: 335, name: 'Category1'},
{value: 310, name: 'Category2'},
{value: 234, name: 'Category3'},
{value: 135, name: 'Category4'},
{value: 1548, name: 'Category5'}
]
}
]
};
myChart.setOption(option);
<script src="https://cdn.jsdelivr.net/npm/echarts@4.7.0/dist/echarts.min.js"></script>
<div id="main" style="width: 600px;height:400px;"></div>