我正在尝试将默认的highcharts图例符号更改为我自己的自定义符号。我希望有一个字体真棒图标旁边的传奇标签。为此,我想到了labelformatter:
labelFormatter: function () {
var on = '<g><text x="0" y="0" style="color:'+this.color+';font-family:FontAwesome"></text></g> ' + this.name;
var off = '<g><text x="0" y="0" style="color:'+this.color+';font-family:FontAwesome"></text></g> ' + this.name;
return this.iconState ? on : off;
}
这实际上让我添加图标,因为我想,但现在我的probelm是以下:单击图例项时,图标保持原始颜色,不会像标签那样变为灰色。我曾想过在触发单击事件时重新呈现图例(使用MyIdItemClicked),但我还没有找到任何可行的方法。
有谁知道我怎样才能重新渲染传说?
或
怎么可能把符号设成我自己的?
谢谢你,谢谢
3条答案
按热度按时间kr98yfug1#
您可以通过将此信息添加到Highcharts符号数组来定义自定义符号,如示例所示:
http://jsfiddle.net/nhx59/2/
或使用图像http://www.highcharts.com/demo/spline-symbols
yqlxgs2m2#
还有一个办法在我的labelFormatter中,我返回一个html字符串,其中包括我的图像,具有唯一的类名或id。
现在,我在www.example.com或www.example.com下监听legendItemClick事件plotOptions.column.eventsplotOptions.line.events,然后找到我的元素并添加一个具有不透明度的css类,如下所示:
.dullImage { opacity: 0.4; filter: alpha(opacity=40); /* msie */ }
在legendItemClick中,事件对象被传递,您可以查看event.currentTarget.name(以查找图例名称)和event.currentTarget.isDirty,以确定单击是禁用还是启用图例。
hgtggwj03#
您可以伊斯利添加图标或字体真棒传说与文字。
请参阅完整的工作文章,其中包含链接https://w3reign.com/highcharts-legend-with-font-awesome-icon-and-values-inside-plot-area/上的演示