散点图的Highcharts图例符号大小

时间:2014-07-21 07:33:01

标签: highcharts

我有一个渲染具有不同符号大小的三维散点图的问题 - 请参阅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/

我该如何解决这个问题?

由于

3 个答案:

答案 0 :(得分:2)

在调整translatechart.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