【发布时间】:2018-03-31 23:17:49
【问题描述】:
在 HighCharts 5.0 中,您可以定义一组应用于不同视口大小的响应式图表选项。见https://www.highcharts.com/docs/chart-concepts/responsive。
不幸的是,对 xAxis 和 yAxis 的更改只能在一个方向上起作用。第二次调整浏览器大小时,无法恢复到原来的选项。
chartOptions: {
xAxis: {
labels: {
formatter: function () {
return this.value.charAt(0);
}
}
}
}
预期
当图表宽度 500px 时,标签应恢复为“一月”。
实际
当图表
chartOptions: {
yAxis: {
title: {
text: null
}
}
}
预期
当图表宽度 500px 时,yAxis 标题应显示“数量”。
实际
当图表宽度
总结
有一些潜在的解决方法,但它们不能解决问题。
在第二个示例中,可以使用 HighChart 的样式模式和 CSS 媒体查询或 className 切换 yAxis 标题(请参阅此处的 className 示例:https://www.highcharts.com/docs/chart-concepts/responsive)
但是,这只修复了可以通过 CSS 解决的问题(例如隐藏元素)。这不是截断 xAxis 名称、将标签旋转 45 度等的现实解决方案。
另一种选择是使用 $(window).resize() 内部的 HighCharts update() 函数,但图表已经在监听这个事件,所以我不想添加额外的监听器。
我错过了什么还是这只是一个错误?谢谢!
【问题讨论】:
标签: highcharts responsive