簡體   English   中英

Highcharts - 如何正確更新VUMeter的系列[0] .data和yAxis標題?

[英]Highcharts - how to properly update series[0].data and yAxis title of a VUMeter?

我正在Highcharts中准備一個VU Meter圖來顯示一組值。 通過選擇<SELECT><OPTION> ,一次顯示一個這些值。 我設法理解如何更改圖表的title以匹配<OPTION>的選定label ,但不幸的是我是菜鳥,我無法正確更新seriesdata

jsFiddle上提供了一個最小的工作示例 特別是,更改<SELECT>時會觸發以下函數:

$('#receptorsList0').change(function() {
    var selectedOption = $("#receptorsList0 option:selected");
    var selectedValue = selectedOption.val();
    var selectedText = selectedOption.text();
    alert("i: "+selectedOption+", val: "+selectedValue+", text: "+selectedText);

    // 1. Possible?
    chart.yAxis.setTitle({ text: table[selectedText] + '<br/><span style="font-size:8px">' + selectedText + '</span>' }); 
    // 2. Doesn't work, suggestions? Same with chart.series[0].update(...)
    chart.series[0].setData([selectedValue], true); 
    chart.setTitle({ text: selectedText });
    // 3. Unneeded, right?
    chart.redraw(); 
});

我的問題如下:

  1. 是否支持更改yAxistitle 這類似於更新圖形標題的命令,但它當然不起作用。
  2. 我該如何更改數據? chart.series[0].setData(...)chart.series[0].update(...)都只使指針消失以保持靜止。 data格式不正確,也許? 你能指出我的錯誤嗎?
  3. 這是不必要的,對(如果以上工作)?

提前感謝您提供的任何建議!


感謝Sebastian Bochan向我指出了正確的方向,我設法解決了上述問題! 請在下面找到上述功能的最終版本:

$('#receptorsList0').change(function () {
    var selectedOption = $("#receptorsList0 option:selected");
    var selectedValue = parseFloat(selectedOption.val());
    var selectedText = selectedOption.text();

    chart.yAxis[0].update({
        title: {
            text : table[selectedText] + '<br/><span style="font-size:8px">'+selectedText+'</span>',
            y : -40
        }
    });
    chart.series[0].data[0].update(selectedValue);
    chart.setTitle({
        text: selectedText
    });
});
  1. 是的,可以通過調用軸上的更新功能實現。 http://api.highcharts.com/highcharts#Axis.update()

  2. 更新,適用於點,所以它應該是chart.series [0] .data [0] .update(20);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM