我想动态显示背景颜色为每个系列(唯一的名称)在甘特。类似于下面屏幕截图中所示的内容
Image showing light grey and grey background for Development & Testing
我通过引用此documentation尝试了yAxis上的plotBands选项
Codepen link for the demo code
yAxis:
{
uniqueNames: true,
plotBands: [
{
color: "#DCDCDC",
from: 0.5,
to: 1.5
},
{
color: "grey",
from: 1.5,
to: 2.5
}
],
},
有了这个,我可以设置背景,如果我知道从和到值。但在我的例子中,这些值是动态的。
那么有没有一种方法可以为uniqueNames = true的系列设置背景呢?
1条答案
按热度按时间w9apscun1#
这有点棘手,API中没有允许您为给定行设置背景的选项,您使用的
plotBands
是一个很好的方法,但如果您想要动态设置,则不理想。在这种情况下,您可以使用SVGRenderer并使用回调函数
chart.events.load()
生成矩形,然后在更改窗口宽度或其他图表更新时使用chart.events.render()
动态更新它们的位置和高度。Demo:https://jsfiddle.net/BlackLabel/jarqk03c/
API:https://api.highcharts.com/class-reference/Highcharts.SVGRenderer
https://api.highcharts.com/highcharts/chart.events.load
https://api.highcharts.com/highcharts/chart.events.render