gpt4 book ai didi

javascript - Highcharts饼图如何减少由于绘图宽度造成的图表和图例之间的空间

转载 作者:行者123 更新时间:2023-12-03 03:50:21 25 4
gpt4 key购买 nike

当图例位于图表右侧且其布局设置为垂直时,是否有办法减少图表和图例之间的空白?问题似乎是由绘图区域的宽度引起的,饼图中绘图区域的宽度变得不必要的大,因为图表始终是圆形。图表的宽度和高度无法固定以实现响应能力。

https://jsfiddle.net/rredondo/gdh86chg/

图表选项有:

{
chart: {
type: 'pie',
plotBorderWidth: 1,
plotBorderColor: '#3F4044',
borderColor: '#AAAAAA',
borderWidth: 2
},
series: [{
name: 'Incidents',
data: [{
name: "Critical",
y: 1,
color: "#FF0000"
}, {
name: "Severe",
y: 8,
color: "#F57622"
}, {
name: "Major",
y: 13,
color: "#F0A401"
}, {
name: "Minor",
y: 25,
color: "#F0C801"
}, {
name: "Information",
y: 30,
color: "#4AB6FF"
}],
size: '80%',
innerSize: '60%',
showInLegend: true,
dataLabels: {
enabled: false
}
}],
legend: {
layout: "vertical",
align: "right",
verticalAlign: "middle",
}
}

最佳答案

正如我在评论中提到的,您应该能够在图表加载时移动图例并使用 attr() 重绘:

http://api.highcharts.com/highcharts/chart.events.load http://api.highcharts.com/highcharts/chart.events.redraw http://api.highcharts.com/highcharts/Element.attr

    // Create the chart
var updateLegend = function(chart) {
var center = chart.series[0].center;
console.log(chart.legend)
chart.legend.group.attr({
translateX: center[0] + center[2] / 2
});
}
var chart = Highcharts.chart('container', {
chart: {
type: 'pie',
plotBorderColor: '#3F4044',
borderColor: '#AAAAAA',
borderWidth: 2,
marginRight: 0,
marginLeft: 0,
events: {
load: function() {
updateLegend(this)
},
redraw: function() {
updateLegend(this);
}
}
},
series: [{
name: 'Incidents',
data: [{
name: "Critical",
y: 1,
color: "#FF0000"
}, {
name: "Severe",
y: 8,
color: "#F57622"
}, {
name: "Major",
y: 13,
color: "#F0A401"
}, {
name: "Minor",
y: 25,
color: "#F0C801"
}, {
name: "Information",
y: 30,
color: "#4AB6FF"
}],
size: '80%',
innerSize: '60%',
showInLegend: true,
dataLabels: {
enabled: false
}
}],
legend: {
layout: "vertical",
align: "right",
verticalAlign: "middle",
}
});

实例:https://jsfiddle.net/gdh86chg/11/

关于javascript - Highcharts饼图如何减少由于绘图宽度造成的图表和图例之间的空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45194062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com