我有一个渲染具有不同符号大小的三维散点图的问题 - 请参阅http://jsfiddle.net/YyV6x/4/
图例采用与主图表中相同大小的符号,图例项目的位置完全关闭。我试图将图例符号强制为相同的大小:
$(chart.series).each(function(){
this.legendSymbol.attr('width',8);
this.legendSymbol.attr('height',8);
});
不幸的是,它也会移动符号X和Y坐标 - 请参阅http://jsfiddle.net/HB53K/。
我该如何解决这个问题?
由于
答案 0 :(得分:2)
在调整translate
和chart.series
之前,您可以在每个width
上执行height
将其移动到正确的位置。像这样(JSFiddle example):
$(chart.series).each(function(){
this.legendSymbol.translate((this.legendSymbol.width/2), ((this.legendSymbol.height/2)-4));
this.legendSymbol.attr('width',8);
this.legendSymbol.attr('height',8);
});
它不会修复图例项目与原始尺寸之间留下的间距,但至少每个项目都位于其图例文字的位置。
可能有一些更优雅的方法来解决这个问题。
答案 1 :(得分:1)
您可以使用不同的解决方案:为系列设置默认标记,但对于每个点更改半径:http://jsfiddle.net/HB53K/5/
系列示例:
{
name: 'Drinking out',
data: [
{
y: 5,
marker: {
radius: 19
}
},{
y: 8,
marker: {
radius: 19
}
},{
y: 6,
marker: {
radius: 19
}
}
],
marker: {
symbol: 'square',
//radius: 19 //default value
}
}
答案 2 :(得分:0)
向我们的开发人员报告增强功能。
https://github.com/highslide-software/highcharts.com/issues/3275