3

我刚开始使用 highcharts,我试图找出一种以 % 显示 y 轴标签的方法,而不是基本柱形图的实际值/计数。有什么办法可以做到吗?有人可以给我一些建议吗?

谢谢

4

3 回答 3

3

如果您只想更改轴标签,请在此处查看我的答案和小提琴示例:

简单条形图的高图表占总数的百分比

如果您希望工具提示也显示 % 值,则可以从该示例中的 dataLabels 格式化程序中复制代码来完成此操作。

于 2013-07-09T15:41:40.873 回答
1

不幸的是,此选项不可用,但您可以准备自己的函数来计算所有点并计算 percetn 值。然后返回数据系列的更新值。

于 2013-07-09T12:15:35.407 回答
0

您可以通过将每个步除的总和除以计数来将计数更改为分布百分比。

这是修改为显示百分比的 Highcharts 示例 histogram() 函数,确保将 yAxis 设置为最大 1。如果您不希望小数百分比乘以 100。

function histogram(data, step) {
    var histo = {},
        x,
        i,
        sum = 0,
        arr = [];

    // Group down
    for (i = 0; i < data.length; i++) {
        x = Math.floor(data[i][0] / step) * step;
        if (!histo[x]) {
        histo[x] = 0;
       }
        histo[x]++;
    }

    // Make the histo group into an array
    for (x in histo) {
        if (histo.hasOwnProperty((x))) {
            arr.push([parseFloat(x), histo[x]]);
        }
    }

    // find sum 
    for (i = 0; i < arr.length; i++) {
            sum += arr[i][1];
       }

    // calculate percent 
    for (i = 0; i < arr.length; i++) {
            arr[i][1] = arr[i][1]/sum ;
        }

    // sort the array
    arr.sort(function (a, b) {
        return a[0] - b[0];
    });

    return arr;
}

小提琴:http: //jsfiddle.net/jamie_farrell/xy7uogz4/2/

于 2017-03-30T18:35:54.037 回答