2016-04-25 93 views
1

我在同一個圖表上有多個系列,我想使用工具提示格式化工具使工具提示中的系列名稱看起來可讀。目前,它們以SeriesonenameSeriestwoname的形式顯示,但我希望它們以Series One NameSeries Two Name的形式顯示。我仍然希望保持工具提示的格式爲Series One Name: 0.567Highcharts:在工具提示中格式化系列名稱

我格式化圖表標籤,在這裏我用下面的代碼時做一些與此類似:

legend: { 
    labelFormatter: function() { 
    return { 
     'Seriesonename': 'Series One Name', 
     'Seriestwoname': 'Series Two Name' 
    }[this.name]; 
    } 
} 

我試圖做同樣的工具提示格式化,但我似乎無法讓它起作用。我懷疑這是與共享工具提示的事實有關,但我不能100%確定。

任何幫助將不勝感激!

+1

你爲什麼不設置''''本身的'name'屬性? –

+0

@HalvorStrand我不確定我可以。我的數據來自另一個來源,我使用Highcharts包裝器來格式化所有內容,因此我必須使用labelFormatter來分類圖例中的系列名稱。 – helencrump

+0

但是,如果您預先處理數據,則可以在將任何內容發送到統計圖之前進行一次,而不是每次需要顯示名稱時都進行。 – jlbriggs

回答

5

若要對工具提示執行類似legend.labelFormatter的方法,您可以使用tooltip.formattertooltip.pointFormatter,這在某種程度上取決於設置圖表的方式。

使用tooltip.pointFormatter可能是(JSFiddle)的一個例子:

tooltip: { 
    pointFormatter: function() { 
     var seriesNameConverter = { 
      'Seriesonename': 'Series One Name', 
      'Seriestwoname': 'Series Two Name' 
     }; 

     return '<span style="color:{point.color}">\u25CF</span> ' 
      + seriesNameConverter[this.series.name] + ': <b>' + this.y + '</b><br/>'; 
    } 
} 

這是tooltip.pointFormat與地方的系列名稱的轉換默認樣式。

+0

我很確定這正是我所需要的,但它似乎對工具提示沒有任何影響 - 也沒有任何控制檯錯誤。 'tooltip.formatter'確實產生了錯誤,所以我想我需要使用'pointFormatter'。 – helencrump

+0

你的意思是在你自己的代碼中?由於JSFiddle中顯示的效果是你需要的,對嗎? –

+0

是的,JSFiddle正是我想要實現的。我可能錯過了一些明顯的東西。感謝所有的幫助! :) – helencrump

相關問題