Amcharts将标签放置在某些x y位置

时间:2018-10-14 09:05:27

标签: javascript amcharts

我试图在AmCharts xy图表内的某些x,y位置放置一些标签。

这是我添加标签的代码:

var firstChart = AmCharts.makeChart("chartdiv", config);
var i1x = firstChart.xAxes[0].getCoordinate(parseFloat(data[0].i1x));
var i1y = firstChart.yAxes[0].getCoordinate(parseFloat(data[0].i1y));        
var i2x = firstChart.xAxes[0].getCoordinate(parseFloat(data[0].i2x));
var i2y = firstChart.yAxes[0].getCoordinate(parseFloat(data[0].i2y));
var iMainx = firstChart.xAxes[0].getCoordinate(parseFloat(data[0].iMainx));
var iMainy = firstChart.yAxes[0].getCoordinate(parseFloat(data[0].iMainy));
var i4x = firstChart.xAxes[0].getCoordinate(parseFloat(data[0].i4x));
var i4y = firstChart.yAxes[0].getCoordinate(parseFloat(data[0].i4y));
var i5x = firstChart.xAxes[0].getCoordinate(parseFloat(data[0].i5x));
var i5y = firstChart.yAxes[0].getCoordinate(parseFloat(data[0].i5y));

firstChart.addLabel(i1x, i1y, 'rpm', 'center', 16, 'black', 0, 1, true);
firstChart.addLabel(i2x, i2y, 'rpm', 'center', 16, 'black', 0, 1, true);
firstChart.addLabel(iMainx, iMainy, 'rpm', 'center', 16, 'black', 0, 1, true);
firstChart.addLabel(i4x, i4y, 'rpm', 'center', 16, 'black', 0, 1, true);
firstChart.addLabel(i5x, i5y, 'rpm', 'center', 16, 'black', 0, 1, true);

问题是我的所有Y点都可以,但是X轴没有,所有标签都应留在图形的左侧。

这里是屏幕截图enter image description here

1 个答案:

答案 0 :(得分:0)

此问题涉及使用center,但无法正常工作。如果要使文本居中对齐,请尝试middle,它还会根据需要将标签正确地放置在左侧。

我也强烈建议您不要使用未记录的属性-xAxesyAxes是由库本身管理的内部属性。如果发布了更改这些属性的管理方式的更新,则代码可能会中断。请改用已记录的valueAxes数组,并从配置中按索引引用所需的轴。

Demo using middle