要使用不同的数据源进行CSV导出,您可以使用AMCharts的CSV导出功能,并在导出时使用不同的数据源。以下是一个使用JavaScript代码示例的解决方法:
// 创建一个包含图表数据的数组
var chartData = [
{
category: "Category 1",
value: 10
},
{
category: "Category 2",
value: 20
},
{
category: "Category 3",
value: 30
}
];
// 创建一个包含导出数据的数组(不同的数据源)
var exportData = [
{
category: "Category A",
value: 100
},
{
category: "Category B",
value: 200
},
{
category: "Category C",
value: 300
}
];
// 创建图表
var chart = am4core.create("chartdiv", am4charts.XYChart);
chart.data = chartData;
// 创建数据列
var categoryAxis = chart.xAxes.push(new am4charts.CategoryAxis());
categoryAxis.dataFields.category = "category";
var valueAxis = chart.yAxes.push(new am4charts.ValueAxis());
valueAxis.title.text = "Value";
var series = chart.series.push(new am4charts.ColumnSeries());
series.dataFields.categoryX = "category";
series.dataFields.valueY = "value";
series.name = "Series 1";
// 创建CSV导出按钮
chart.exporting.menu = new am4core.ExportMenu();
chart.exporting.menu.items = [
{
label: "Export as CSV",
menu: [
{
label: "Export with Chart Data",
click: function() {
chart.exporting.exportCSV("chartData.csv");
}
},
{
label: "Export with Different Data",
click: function() {
// 将图表数据替换为不同的数据源
chart.data = exportData;
chart.exporting.exportCSV("exportData.csv");
// 将图表数据恢复为原始数据
chart.data = chartData;
}
}
]
}
];
在这个示例中,我们首先创建了一个包含图表数据的数组chartData和一个包含导出数据的数组exportData。然后,我们使用am4core.create方法创建了一个图表,并将chartData作为图表的数据源。
接下来,我们使用am4charts.CategoryAxis和am4charts.ValueAxis创建了一个类别轴和一个值轴,并使用am4charts.ColumnSeries创建了一个数据列。最后,我们使用am4core.ExportMenu创建了一个CSV导出按钮,并在按钮点击事件中实现了不同数据源的导出。
在点击“Export with Different Data”按钮时,我们将图表数据替换为exportData,然后使用chart.exporting.exportCSV方法导出CSV文件。最后,我们将图表数据恢复为原始数据chartData。
您可以根据您的实际需求修改和调整代码示例。希望对您有帮助!