0

yAxis の最初の目盛りラベルを変更する必要があります。yAxis の最小値を変更しました。

yAxis: [{
    title : {
        text : 'Position'
    },
    gridLineWidth: 1,
    startOnTick: false, 
    min: 1, //changed min value
    reversed: true,
}]

ただし、前の yAxis には値が表示されません。yAxis の最初の値に署名する方法は?

これが私のチャートです。

私が書く場合:

yAxis: [{
    title : {
    text : 'Позиция'
    },
    startOnTick: false, 
    showFirstLabel: true,
    min: 1,
    reversed: true, 
    tickInterval: 1,
    labels: {
          formatter: function() {
            if (this.value < 1)
                return null;
            else if (this.value == 1)
                return this.value;
            else if (this.value % 2 == 0)
                    return this.value;
        }
    }

}] その後、yAxis のスケーリングは私のデータにとって悪いものになります :(チャート

4

2 に答える 2

2

独自のyAxis.tickPositionerを定義して、ティックを配置するすべての位置を定義できます。

あなたの場合、動作全体をオーバーライドしたくないので、最小位置に目盛りを配置するだけなので、axis.getLinearTickPositions(interval, min, max)メソッドを活用して、そうでなければ生成されるデフォルト位置の配列を取得し、追加の目盛りを追加することができますこの配列。

以下のコードでは、y 軸の最小値と最大値の両方に目盛りが追加されています。

yAxis: {
    showFirstLabel: true,
    showLastLabel: true,
    tickPositioner: function(min, max) {
        // specify an interval for ticks or use max and min to get the interval
        var interval = Math.round((max - min) / 5);
        var dataMin = this.dataMin;
        var dataMax = this.dataMax;
        // push the min value at beginning of array
        var positions = [dataMin];
        var defaultPositions = this.getLinearTickPositions(interval, dataMin, max);
        //push all other values that fall between min and max
        for (var i = 0; i < defaultPositions.length; i++) {
            if (defaultPositions[i] > dataMin && defaultPositions[i] < dataMax) {
                positions.push(defaultPositions[i]);
            }
        }
        // push the max value at the end of the array
        positions.push(dataMax);
        return positions;
    }
}

y 軸の最小値と最大値に目盛りを表示 | Highchart & Highstock @ jsFiddle
チャートのデモ @ jsFiddle

于 2012-11-13T09:33:12.597 に答える
0

私にとっては、すべてがうまくいっているようです。反転チャートの最小値は 1 で、y 軸の真上にあります。ただし、この値を軸に表示したい場合は、この投稿の説明をご覧ください。

于 2012-11-12T07:59:09.053 に答える