1

簡単に言えば、Highstocks は入力したすべてのデータを四捨五入しているようです。ツールチップで設定した小数点以下 2 桁まで表示する必要がありますが、現時点では 2 桁で受け取っているのは 0 です。したがって、1.5 ではなく 1 です。

$.getJSON('mkjson.php?device=<?echo $device_name;?>&sensor=<?echo $sensor_name;?>&pin=<?echo $pin;?>&user=<?echo $_SESSION['user'];?>', function(data) {
    // Create the chart
    window.chart = new Highcharts.StockChart({
        chart : {
            renderTo : 'container',
            zoomType: 'x'
        },

        rangeSelector : {
            selected : 1
        },

        title : {

            text : 'Device:<?echo $device_name;?>'
        },
        subtitle : {
            text : 'Sensor:<?echo $sensor_name;?>'

        },

        xAxis: {
        type: 'datetime',
        dateTimeLabelFormats: {
            second: '%Y-%m-%d<br/>%H:%M:%S',
            minute: '%Y-%m-%d<br/>%H:%M',
            hour: '%Y-%m-%d<br/>%H:%M',
            day: '%Y<br/>%m-%d',
            week: '%Y<br/>%m-%d',
            month: '%Y-%m',
            year: '%Y'
        }
    },

        yAxis : {
            title : {
                text : '<?echo $unit;?>'
            }


        },

        rangeSelector : {
            buttons : [{
                type : 'minute',
                count : 10,
                text : '10m'
            }, {
                type : 'hour',
                count : 1,
                text : '1H'
            }, {
                type : 'day',
                count : 1,
                text : '1D'
            },
            {
                type : 'day',
                count : 3,
                text : '3D'
            }],
            selected : 3,
            inputEnabled : false
        },          

        series : [{
            name : 'Voltage',
            data : data,
            tooltip: {
                valueDecimals: 2
            },
            dataGrouping: {
            enabled: false
            }
        }]
    });
});
4

2 に答える 2

2

を使用して数値をフォーマットできますHighcharts.numberFormat()

tooltip: {
            formatter: function() {
                return Highcharts.numberFormat(this.y, 2);
            }
        }

デモ: http://jsfiddle.net/em7h6/

ところで、このサンプルによると:http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/tooltip/valuedecimals/

を使用してvalueDecimalsも機能するはずですが、あなたのケースで何が欠けているのかわかりません。

于 2013-01-30T20:27:42.477 に答える
0

numberFormat(); を使用せずにhttp://jsfiddle.net/rbr23/で動作するはずです。

 chart: {
            renderTo: 'container'
        },

        rangeSelector: {
            selected: 1
        },

        title: {
            text: 'AAPL Stock Price'
        },

        series: [{
            data: [29.92, 71.51, 106.433, 129.12, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.61, 54.43]
        }]
于 2013-02-04T10:40:14.693 に答える