【问题标题】:Reduce gap between series data in Bar Highchart减少 Bar Highchart 中系列数据之间的差距
【发布时间】:2013-11-24 06:17:04
【问题描述】:

我想减少条形图系列数据之间的空间。下面提到的是提供清晰图片的图像:

谁能建议最好的方法?

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'bar'
        },
        title: {
            text: 'Historic World Population by Region'
        },
        subtitle: {
            text: 'Source: Wikipedia.org'
        },
        xAxis: {
            categories: ['Africa', 'America', 'Asia', 'Europe', 'Oceania'],
            title: {
                text: null
            }
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Population (millions)',
                align: 'high'
            },
            labels: {
                overflow: 'justify'
            }
        },
        tooltip: {
            valueSuffix: ' millions'
        },
        plotOptions: {
            bar: {
                dataLabels: {
                    enabled: true
                }
            }
        },
        legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'top',
            x: -40,
            y: 100,
            floating: true,
            borderWidth: 1,
            backgroundColor: '#FFFFFF',
            shadow: true
        },
        credits: {
            enabled: false
        },
        series: [{
            name: 'Year 1800',
            data: [107, 31, 635],
            pointWidth: 22,
        }, {
            name: 'Year 1900',
            data: [133, 156, 947],
            pointWidth: 22
        }]

    });
});

http://jsfiddle.net/fMdk3/5/

【问题讨论】:

    标签: highcharts bar-chart


    【解决方案1】:

    您想要使用的选项是 pointPadding(条之间的填充)和 groupPadding(seies 之间的填充)。

    例如

     plotOptions: {
            series: {
                pointPadding: 0,
                groupPadding: 0.1,
            }
        },
    

    例如http://jsfiddle.net/BZzWQ/

    【讨论】:

    • 如果您能在此处更新您的方法将不胜感激 (jsfiddle.net/fMdk3/5)
    • 用示例 jsfiddle 更新。
    • 如果我将 pointWidth Fix 保持为 22,然后尝试实现相同的目标,它就不会发生。有什么限制吗?检查这个jsfiddle.net/BZzWQ/1
    • 通过将 div 高度设置得如此之大,会使图表浪费很多空间。尝试不设置高度,并调整 groupPadding 例如jsfiddle.net/gnM2R
    • 我会做到的。但我正在处理的数据是动态的,并且经常变化。所以我想要一个通用的解决方案。数据系列的数量各不相同。