2017-09-11 6 views
1

ハイチャートを使用して、円グラフの中央にラベルを追加しています。私はオプションをconfigのラベルを使用していますが、私はそのようにの先頭にラベルを追加したい:ハイチャート - ラベルにアイコンを追加する方法

enter image description here

私はlabelFormatter何も動作するようには思え含む複数のものを、試してみました。現在のところ、私のコードは以下のように書かれています:

labels: { 
    items: [{ 
    useHTML: true, // Using HTML for label 
    //html: "Transactions", 
    html: '<img src="https://github.com/tobi-ajala/shell-exercise/blob/master/icons/card.png?raw=true"/>' + "Transactions", // Doesn't work! 
    style: { 
     fontFamily: 'Arial,Roboto,Helvetica,sans-serif', 
     fontWeight: 'bold', 
     fontSize: 14, 
     verticalAlign: 'middle', 
     top: 140, 
     left: 460 
    } 
    }] 
}, 

何か助けがあれば幸いです。 JSフィドルをご覧ください:http://jsfiddle.net/tobitobetoby/1fqvzpdn/22/

答えて

2

labels.itemsイメージをサポートしていないようです。

rendererを使用すると、引数として渡す正確な内部HTMLを持つラベルを作成できます。 useHTMLオプション(7番目の引数)が有効であることに注意してください。その後、CSSを使ってスタイルを設定できます。

this.renderer.label("<div class='transactions'> 
    <img src='https://github.com/tobi-ajala/shell-exercise/blob/master/icons/card.png?raw=true'/> 
     Transactions</div>", 120, 125, null, null, null, true).add(); 

デモ:http://jsfiddle.net/kkulig/p4nnxjq1/

APIリファレンス:http://api.highcharts.com/highcharts/Renderer.label

+0

あなたが途中で画像やテキストを配置する方法を知っていますか? verticalAlign:middle; S –

+0

レンダラを介してレンダリングされたラベルは絶対位置を持ち、その親はコンテナ全体です。renderer.label関数の第2引数(x)と第3引数(y)を適切に配置する必要があります。他の解決策は、タイトルにラベルコードを移動し、私が答えで行ったのと同じ方法でuseHTMLを使用することです。例:http://jsfiddle.net/kkulig/p4nnxjq1/ –

関連する問題