highcharts - Y轴标签和系列颜色相同
问题描述
我有一个包含两个系列的图表。一个系列使用左侧 Y 轴,另一系列使用右侧 Y 轴。我希望每个轴上的标签具有与其各自系列相同的颜色。
我知道这可以通过手动分配颜色来完成,例如:
yAxis: [
{
labels: {
style: {
color: "red"
}
}
},
{
labels: {
style: {
color: "green"
}
}
}
],
series: [
{
color: "red",
yAxis: 0,
data: []
},
{
color: "green",
yAxis: 1,
data: []
}
]
但我最好不要手动分配颜色。当您不指定任何颜色时,将自动设置系列颜色。我希望相应的轴标签具有相同的颜色。
解决方案
要自动更改颜色,您可以使用图表load
事件并更新 y 轴:
chart: {
events: {
load: function() {
this.series.forEach(function(s) {
s.yAxis.update({
labels: {
style: {
color: s.color
}
}
}, false);
});
this.redraw();
}
}
}
现场演示:http: //jsfiddle.net/BlackLabel/u0myw5az/
API参考:
https://api.highcharts.com/highcharts/chart.events.load
https://api.highcharts.com/class-reference/Highcharts.Axis#update
推荐阅读
- reactjs - 在 Reactjs 中使用 Material-UI 在表格中显示树数据
- c# - 在 C# .NET Core 控制台中退出应用程序及其打开的线程
- reactjs - 分子和微前端服务
- javascript - 从字符串中提取浮点数
- laravel - Laravel 原始 sql 到 雄辩
- javascript - 在 RSK Regtest 上开发时如何提高块数?
- intellij-idea - 如何防止 JetBrains 的所有产品在后台检查被忽略的文件并使其可以提交
- php - 忽略条件 - Foreach 循环内的 IF 语句
- node.js - 传递 cookie 并等待选择器
- python - 使用数组进行 Numpy 过滤