5

列と Y 軸の間に 1 ピクセルのスペースがあるハイチャートを使用して縦棒グラフを作成する必要があります。目的のグラフにある 1 ピクセルのスペースを、私が行ったグラフに追加するにはどうすればよいですか。これらは私が行ったコードです: (申し訳ありませんが、画像を追加するのに十分な評判がないため、投稿していません)

var data = [ 20, 29, 25, 29, 21, 17, 20, 19, 18]; 
createMeasuresGraph(data, "quintals-sugar-graph");
function createMeasuresGraph(data, container) {
    data[0] = { color: '#55B647', y: data[0] };
    data[data.length -2 ] = { color: '#F15B49', y: data[data.length -2 ] };
    var chart = new Highcharts.Chart({
        chart: {
            marginBottom: 1,
            marginLeft: 0,
            marginRight: 0,
            marginTop: 0,
            renderTo: container,
            type: 'column',
        },
        credits: {
            enabled: false
        },
        legend: {
            enabled: false
        },
        plotOptions: {
            column: {
                pointWidth: 5,
            },
            series: {
                borderWidth: .1,

            }
        },
        series: [{
            data: data,
            color: '#95D2F3',
            shadow: false,
        }],
        title: {
            text: ''
        },
        tooltip: {
            enabled: false
        },
        xAxis: {
            labels: {
                enabled: false
            },
            title: {
                enabled: false
            },
            lineColor: '#CBCBCB',
            tickWidth: 0
        },
        yAxis: {
            endOnTick: false,
            gridLineWidth: 0,
            labels: {
                enabled: false
            },
            startOnTick: false,
            minPadding: 0.5,
            title: {
                text: ""
            }
        }
    });
}

間のスペースがすべての列で同じではないこともわかりました。スペースを取得するために間違ったアプローチを使用している可能性があります。何が最適でしょうか?

4

3 に答える 3

13

各列の間に1pxのスペースが必要ですか?

プロットのサイズ/列の数に基づいて列の幅を計算します。

var colWidth = ($('#quintals-sugar-graph').width() / data.length) + 1;

次に、「borderWidth」を1pxに設定して、スペースを提供します。

    plotOptions: {
        column: {
            pointWidth: colWidth,
            borderWidth: 1
        },

    },

ここでフィドル。

ここに画像の説明を入力してください

于 2012-09-03T21:00:22.057 に答える
2

あなたは簡単に行うことができます:

plotOptions: {
  column: {
    pointPadding: 0,
    groupPadding: 0,
    borderWidth: 1
  }
},
于 2014-07-22T16:59:10.170 に答える