如何在Amcharts 4

时间:2019-03-05 09:05:35

标签: amcharts

我有一个在y轴上带有标签的xychart。第二个标签被隐藏:

enter image description here

Google建议我可以设置:

valueAxis.autoGridCount = false;

和:

valueAxis.gridCount

到数据所需的网格数。

...但是它没有任何效果,V4文档中似乎缺少autoGridCount,也没有提及将其删除。

如何以编程方式设置网格计数?

编辑:JSFiddle here

1 个答案:

答案 0 :(得分:0)

您已经知道可以使用axis.renderer.minGridDistance显示所有标签:

categoryAxis.renderer.minGridDistance = 0;

要调整行高,可以使用series.columns.template.height来调整每个元素的高度。我建议将其设置为100%并为项目设置一个小边框:

series.columns.template.stroke = am4core.color('#fff');
series.columns.template.strokeWidth = 1;
series.columns.template.strokeOpacity = 1;
series.columns.template.height = am4core.percent(100);

要调整行高,我一般建议增加图表高度,因为amcharts试图显示您提供的区域中的所有数据。因此,增加图表的高度将导致所有行具有相同的高度并填充提供的区域。

如果数据变化并且不知道行数,则可以根据数据数组的长度动态设置图表的高度,并使用html滚动条:

JavaScript:

document.getElementById('chart').style.height = `${chart.data.length * 50}px`;

HTML:

<div class="container">
  <div id="chartdiv"></div>
</div>

CSS:

.container {
  max-height: 300px;
  overflow-y: auto;
}

#chartdiv {
  min-height: 200px;
}

Here我创建了一支数字笔以显示我的建议。