所有零值的条形图标签对齐

时间:2018-01-25 11:37:49

标签: javascript html highcharts bar-chart

我正在使用高图表库来绘制条形图。除了一件事,一切都很好。 当条形图中的所有值都为“ZERO”时,对齐方式已更改为右侧。我想让它保持对齐。对于任何非零值,它都按预期工作。

以下是Fiddle

Highcharts.chart('container', {
    chart: {
        type: 'bar'
    },
    title: {
        text: 'Historic World Population by Region'
    },
    subtitle: {
        text: 'Source: <a href="https://en.wikipedia.org/wiki/World_population">Wikipedia.org</a>'
    },
    xAxis: {
        categories: ['Africa', 'America', 'Asia', 'Europe', 'Oceania'],
        title: {
            text: null
        },

    },
    yAxis: {
        min: 0,
        title: {
            text: 'Population (millions)',
            align: 'high'
        },
        labels: {
            overflow: 'justify',
            align:'left'
        }
    },
    tooltip: {
        valueSuffix: ' millions'
    },
    plotOptions: {
        bar: {
            dataLabels: {
                enabled: true
            }
        }
    },
    legend: {
        layout: 'vertical',
        align: 'right',
        verticalAlign: 'top',
        x: -40,
        y: 80,
        floating: true,
        borderWidth: 1,
        backgroundColor: ((Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'),
        shadow: true
    },
    credits: {
        enabled: false
    },
    series: [{
        name: 'Year 1800',
        data: [0, 0, 0, 0, 0]
    }]
});

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

如果所有值均为0,则无法计算max,因此Highcharts将在中间呈现值。您可以通过设置yAxis.maxyAxis.softMax,演示:https://jsfiddle.net/BlackLabel/mvp1ebsj/1/

来强制在左侧呈现标签