问题描述
我在wordpress项目中使用AMCharts4,一切正常,但是在过滤数据时出现了一个奇怪的问题,让我展示一下图像的情况:
-过滤数据(超过2个结果可以100%正常运行)
看看它如何不将相应的分数显示为前两张图像。
这里的问题是如何使那些分数出现?我曾尝试在函数中使用注释的代码行,但似乎无济于事。
您可以在此link(例如,选择澳大利亚或巴西)中重现该问题
labelBullet = series.bullets.push(new am4charts.LabelBullet())
labelBullet.label.horizontalCenter = "left";
labelBullet.label.dx = 10;
labelBullet.label.text = "{values.valueX.workingValue.formatNumber('#.')}";
labelBullet.locationX = 1;
解决方法
问题出在您使用labelBullet.locationX = 1;
上。如果您看一下am4 Bullets documentation:
不过,有一个警告。对于项目符号,locationY属性表示 整个列高度中的相对垂直位置。那 意味着如果我们的规模不以零开始,那么它就不会在 列当前可见部分的直接中心。
在使用倒排图时,同样适用于locationX
。意思是,标签位置是相对于刻度的。
要解决此问题,您可以将min
的值轴设置为0,如以下jsfiddle所示:
valueAxis.min = 0;
或如文档中所述,将标签直接推入列系列模板中,如jsfiddle所示。
label = series.columns.template.createChild(am4core.Label);
label.text = "{values.valueX.workingValue.formatNumber('#.')}";
label.align = "left";
label.valign = "middle";
label.zIndex = 2;