2015-04-17 109 views
1

我想绘制Highchart并将图片和文字放置在切片上。但不知何故SVG图像没有得到显示。在highcharts标签中添加图片

下面是小提琴链接

Fiddle link

一些。我正在使用Series对象,以显示图像的代码是

formatter : function(){ 
      return '<svg class="icon"> 
        <circle cx="10" cy="10" r="10" fill="red" /></svg> 7 
        %' ; 
}, 
+0

请注意,在SVG中渲染SVG将在该数据标签下面呈现工具提示。您还需要为tooltip设置useHTML(使用@faraz的答案),并在CSS中设置所有背景/边框/阴影,而不是Highcharts的默认值。问题的示例:http://jsfiddle.net/mo8dfztx/5/ –

回答

1

Highchart的默认渲染使用SVGs文本节点,只渲染文本。你需要强制标签使用HTML:

dataLabels:{ 
    useHTML: true, 
    formatter : function(){ 
     return '<svg class="icon"><circle cx="10" cy="10" r="10" fill="red" /></svg> 7 %' ; 
    }, 
} 

注意这将导致一些非常古怪的渲染,所以你需要相应地调整CSS。

+0

我的担心现在是相同的..我想标签是完全在每个切片的图标中心..好心建议 – Gags

+0

我接受这个答案为这个解决了图像问题,但仍然集中在每个切片没有解决 – Gags

+0

对不起,但我没有时间深入了解。希望这有助于你进一步。 – fny