要调整AmCharts 5的x轴从数字到年份,你可以使用xAxis的adapter属性来转换数据。
以下是一个示例代码,展示了如何将x轴从数字转换为年份:
// 创建图表实例
var chart = am5xy.create("chartdiv", am5xy.XYChart);
// 创建x轴
var xAxis = chart.xAxes.push(new am5xy.DateAxis());
xAxis.renderer.grid.template.location = 0;
xAxis.renderer.minGridDistance = 50;
// 设置x轴的数据适配器
xAxis.adapter.add("getTooltipText", function(text, target) {
var date = new Date(text);
return date.getFullYear().toString();
});
// 添加数据
chart.data = [
{ year: 2010, value: 10 },
{ year: 2011, value: 15 },
{ year: 2012, value: 5 },
{ year: 2013, value: 20 },
{ year: 2014, value: 30 },
{ year: 2015, value: 25 }
];
// 创建柱状图系列
var series = chart.series.push(new am5xy.ColumnSeries());
series.dataFields.valueY = "value";
series.dataFields.dateX = "year";
// 将x轴的数据字段设置为年份
xAxis.dataFields.date = "year";
// 更新图表布局
chart.invalidateData();
上述代码中,我们首先创建了一个DateAxis作为x轴,并设置了一些基本的样式。然后,我们使用xAxis的adapter属性添加了一个getTooltipText适配器函数,该函数将数字转换为年份格式的文本。最后,我们将数据添加到图表中,并将x轴的dataFields属性设置为年份字段。
通过以上代码,您可以将x轴从数字调整为年份,并在鼠标悬停时显示年份。