如何在高图表中为自定义符号呈现器提供其他参数



我想生成一个带有高度和宽度可变的椭圆形标记的高图表散点图。 为了创建椭圆,我使用了一个自定义标记,并在渲染器中生成必要的曲线。 但是,每个椭圆形所需的宽度和高度是不同的。 理想情况下,我想指定类似于

data:[{x:0, y:0, marker:{radius:{w:3,h:7}} }]

然后在渲染器中创建椭圆时使用该信息。

但是,Highcharts不喜欢将对象作为半径值。有没有办法将任意数据传递给渲染器?我目前正在使用一个技巧,其中我通过标记半径将渲染器将索引传递到外部数组中,但我希望有一种批准的方法,因为这会产生一些不良的副作用。

当前 JSFiddle 在这里

欣赏任何想法!

你需要包装drawPoints函数,它使用

point.graphic = graphic = chart.renderer.symbol(
                        symbol,
                        plotX - radius,
                        plotY - radius,
                        2 * radius,
                        2 * radius
                    )
                    .attr(pointAttr)
                    .add(markerGroup);

但是您的自定义参数应该像标记中的 rx/ry 一样,而不是默认的 r/半径。

最新更新