2016-04-25 6 views
1

同じチャートに複数のシリーズがあり、ツールチップフォーマッタを使用して、シリーズ名をツールチップに見やすく見せるようにしたいと考えています。現在のところ、SeriesonenameSeriestwonameの形式で表示されていますが、Series One NameSeries Two Nameの形式で表示することをお勧めします。私はまだSeries One Name: 0.567と同じ形式でツールチップを保持したいと思います。ハイチャート:ツールチップのシリーズ名の書式

私は次のコードを使用するグラフのラベル、フォーマット時に私はこれに似た何かをやった:私はツールチップフォーマッタのために同じことをやってみましたが、私はできないようです

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

をそれを働かせるために。私はそれが共有のツールチップであるという事実と関係があると思うが、私は100%確実ではない。

ご協力いただければ幸いです!

+1

なぜ 'Series'自体の' name'属性を設定していませんか? –

+0

@HalvorStrand私はできるとは確信していません。私のデータは別のソースから来ています。私はHighchartsラッパーを使ってすべてをフォーマットしています。なぜ、labelFormatterを使って凡例のシリーズ名を整理しなければならなかったのですか? – helencrump

+0

しかし、データを前処理する場合は、名前を表示する必要があるたびに、データを送信するのではなく、一度だけ行うことができます。 – jlbriggs

答えて

5

legend.labelFormatterと同様の方法をツールヒントに使用するには、tooltip.formatterまたはtooltip.pointFormatterを使用できます。これは、グラフの設定方法によって多少異なります。

JSFiddle)可能性がありtooltip.pointFormatterを使用した例は:

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

関連する問題