如何在 HighCharts 中绘制对数刻度的饼图?
How to draw a pie with logarithmic scale in HighCharts?
我需要在 Highcharts 中画一个馅饼(或一个甜甜圈,或半个甜甜圈,我认为这是相同的过程)。
问题在于数据存在严重偏差,即一个切片的大小 = 3,第二个切片的大小 = 1000。
最后的结果是一个大饼,还有一个几乎看不见的饼。
有没有办法以对数方式打印切片的大小(对于轴图)?
饼图不使用轴,因此将其类型设置为对数将不起作用。您可以做的是转换数据并保留 "real" 值,以便它可以显示在工具提示、数据标签等中。
var data = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512],
logData = data.map(function (value) {
return {
y: Math.log(value) / Math.LN10,
realY: value // store a pure value
};
});
// later in chart options
tooltip: {
pointFormat: 'x = {point.x}, y = {point.realY}' // access the pure value in a tooltip
}
比较饼图与转换数据和 "pure" 数据:http://jsfiddle.net/rz9899j8/
我需要在 Highcharts 中画一个馅饼(或一个甜甜圈,或半个甜甜圈,我认为这是相同的过程)。 问题在于数据存在严重偏差,即一个切片的大小 = 3,第二个切片的大小 = 1000。
最后的结果是一个大饼,还有一个几乎看不见的饼。
有没有办法以对数方式打印切片的大小(对于轴图)?
饼图不使用轴,因此将其类型设置为对数将不起作用。您可以做的是转换数据并保留 "real" 值,以便它可以显示在工具提示、数据标签等中。
var data = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512],
logData = data.map(function (value) {
return {
y: Math.log(value) / Math.LN10,
realY: value // store a pure value
};
});
// later in chart options
tooltip: {
pointFormat: 'x = {point.x}, y = {point.realY}' // access the pure value in a tooltip
}
比较饼图与转换数据和 "pure" 数据:http://jsfiddle.net/rz9899j8/