3

Highchartsライブラリを使用して面グラフを作成しようとしています。突然、実際のデータが開始する前に、x軸にいくらかの間隔があることがわかりました。適切なデータを使用して、[0,0]軸からグラフを開始したいと思います。

チャート

<?php 
    $data1 = array(3300, 3000, 4300, 4200, 2900, 1900, 1800); 
?>
<script type="text/javascript">$(function () {
var chart = new Highcharts.Chart({
    chart: {
        renderTo: 'areachart',
        type: 'area'
    },
    title: {
            text: 'People'
    },
    credits: {
        enabled: false
    },
    xAxis: {
        startOnTick: false,
        categories: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
    },
    yAxis: {
        title: {
            text: null
        },
        labels: {
                formatter: function() {
                    return this.value;
                }
        }
    },
    plotOptions: {
        area:{
            dataLabels: {
                enabled: true
            }
        }
    },
    series: [{
        data: [<?php foreach($data1 as $da):
                        echo $da.', ';
                     endforeach;
               ?>
              ]
    }]
});
});
</script>
4

2 に答える 2

2

良いニュースですが、それは可能です...いくつかの注意点があります。

xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
        min:0.5,
        max:10.5,
        tickInterval:1,
        maxPadding:0,
        endOnTick:false,
        startOnTick:false
    }

http://jsfiddle.net/eg9jn/

重要なビットは次のとおりです。最小値と最大値はチャートの「内側」で0.5に設定されています。start/endOnTickはfalseに設定されています。

注意点:カテゴリが2つしかない場合、これは機能しません...

于 2013-08-06T18:34:49.047 に答える
1

のカテゴリを使用しているため、これは不可能ですxAxis。カテゴリのラベルとポイントは、常にカテゴリの中央に設定されます。したがって、最初と最後のカテゴリには、取り除きたいギャップがあります。
しかし、この場合、それはバグではなく、機能です。

xAxis通常の軸を使用するように変更し、カスタムラベルフォーマッターを使用して数値の代わりに日を表示することができます。

于 2012-06-03T19:33:04.857 に答える