在AmCharts4中,可以使用syncWithAxis属性将多个y轴与y = 0轴同步。以下是一个示例代码:
// 创建图表实例
var chart = am4core.create("chartdiv", am4charts.XYChart);
// 创建y轴
var yAxis1 = chart.yAxes.push(new am4charts.ValueAxis());
var yAxis2 = chart.yAxes.push(new am4charts.ValueAxis());
// 设置y = 0轴
yAxis1.renderer.axisFills.template.disabled = true;
yAxis1.renderer.axisFill.template.disabled = true;
yAxis1.renderer.opposite = true;
yAxis1.renderer.grid.template.disabled = true;
// 同步y = 0轴
yAxis2.syncWithAxis = yAxis1;
yAxis2.renderer.axisFills.template.disabled = true;
yAxis2.renderer.axisFill.template.disabled = true;
yAxis2.renderer.opposite = false;
yAxis2.renderer.grid.template.disabled = true;
// 创建数据系列
var series1 = chart.series.push(new am4charts.LineSeries());
series1.dataFields.valueY = "value1";
series1.dataFields.categoryX = "category";
series1.yAxis = yAxis1;
var series2 = chart.series.push(new am4charts.LineSeries());
series2.dataFields.valueY = "value2";
series2.dataFields.categoryX = "category";
series2.yAxis = yAxis2;
// 添加数据
chart.data = [{
"category": "Category 1",
"value1": 10,
"value2": -5
}, {
"category": "Category 2",
"value1": 5,
"value2": -10
}, {
"category": "Category 3",
"value1": 8,
"value2": -2
}];
// 创建滚动条
chart.scrollbarX = new am4core.Scrollbar();
// 绘制图表
chart.cursor = new am4charts.XYCursor();
在上面的示例中,我们创建了一个包含两个y轴的XYChart实例。其中,yAxis1为主要y轴,yAxis2与yAxis1同步,并将yAxis2设置为与y = 0轴同步。然后,我们创建了两个LineSeries实例,并将它们分别与yAxis1和yAxis2关联。最后,我们添加了一些数据,并绘制了图表。
这样,就可以将多个y轴与y = 0轴同步了。