听起来很疯狂,但对我的情况非常有效。欢迎分享您的用例,看看这个小魔术无法解决哪些问题。
消除错误的步骤:
vAxis
上的网格线数量限制为4(对于我们大多数人来说已经足够了)。maxValue
。maxValue
除以4,以查看结果是否为小数。例如:20/ 4 = 0.5
通过这种方式,我们可以有条件地将maxValue
添加到vAxis
中,如下所示:
const maxValue = 20; // 假设最大值为20。
...
vAxis: Object.assign({}, { ... }, noDecimals(maxValue)),
...
/**
* 检查除以4后的值是否有小数。
* 如果是小数,则将'maxValue'增加1。
*/
function noDecimals(maxValue) {
return /\d+\.\d+/i.test(maxValue / 4)
? { maxValue: maxValue + 1 }
: {};
}
最初,当您尝试从图表数据中分配找到的最大值时,它并没有按预期工作。通过将最大值增加1
,可以使Google图表适应得更好。
希望这对那些遇到此问题的人有所帮助!
我通过在选项中添加这行代码成功实现了我的目标:
vAxis: {maxValue: x} (x > 5)
不是完美的...但它能用。
google charts API
是不可能的。也许你可以尝试硬编码来解决问题。尝试将图表更改为允许vAxis.showTextEvery
属性的图表。 - BrOSs