highcharts滚动条标签没有出现

时间:2018-04-02 12:33:33

标签: javascript charts highcharts highstock

我正在尝试将标签放在x轴上,用于下面提到的图表。 甚至我想要显示的标签都是从数据库中获取并显示的。对于y轴的每个值,存在相应的x轴。所以当我将鼠标悬停在点x轴值上时我想要:y轴值。它应该是这样的。

如果有人之前尝试过,请帮忙。

Highcharts.stockChart('container', {

    scrollbar: {
        barBackgroundColor: 'gray',
        barBorderRadius: 7,
        barBorderWidth: 0,
        buttonBackgroundColor: 'gray',
        buttonBorderWidth: 0,
        buttonArrowColor: 'yellow',
        buttonBorderRadius: 7,
        rifleColor: 'yellow',
        trackBackgroundColor: 'white',
        trackBorderWidth: 1,
        trackBorderColor: 'silver',
        trackBorderRadius: 7
    },

    rangeSelector: {
        selected: 1
    },

    series: [{
        name: 'USD to EUR',
 
        data: usdeur
    }]
});
<div id="container" style="height: 400px; min-width: 600px"></div>

<script src="https://code.highcharts.com/stock/highstock.js"></script>
<script src="https://code.highcharts.com/stock/modules/exporting.js"></script>
<script type="text/javascript" src="https://www.highcharts.com/samples/data/usdeur.js"></script>

1 个答案:

答案 0 :(得分:0)

使用tooltip的{​​{1}} (Highcharts API here)

formatter

假设您要在tooltip: { formatter: function() {return this.x+" : "+this.y} } 中为x轴提供names,则此代码应该有效:

使用Javascript:

array

请注意我在此处添加了var namesArray = ["Name1", "Name2", "Name3", "Name4"] Highcharts.stockChart('container', { tooltip: { formatter: function () { var s = ''; $.each(this.points, function () { s += namesArray[this.series.data.indexOf(this.point)] +" : "+this.y; }); return s; } }, rangeSelector: { selected: 1 }, series: [{ name: 'USD to EUR', data: [3, 5, 6, 7] }] }); 作为示例。 namesArray函数的作用如下:

  • 它声明了一个字符串

  • 它遍历您的所有tooltip

  • 对于每个点,它获得Highstock中点的index,并从series.data获得相同的index。这应该可以实现你需要的东西。