Javascript Amcharts:更改整个数据集

Javascript Amcharts:更改整个数据集,javascript,amcharts,Javascript,Amcharts,我开始使用amcharts 4,我遇到了一个问题:根据docs to change charts数据集,只需将新的对象数组分配给图表。数据: chart.data = [{ some data object }, {}......] 它确实对我有用,请看这个代码笔: /** * --------------------------------------- *此演示是使用amCharts 4创建的。 * *有关更多信息,请访问: * https://www.amcharts.com/ * *

我开始使用amcharts 4,我遇到了一个问题:根据docs to change charts数据集,只需将新的对象数组分配给图表。数据:

chart.data = [{ some data object }, {}......]
它确实对我有用,请看这个代码笔:

/**
* ---------------------------------------
*此演示是使用amCharts 4创建的。
*
*有关更多信息,请访问:
* https://www.amcharts.com/
*
*文件可从以下网址获取:
* https://www.amcharts.com/docs/v4/
* ---------------------------------------
*/
//创建图表实例
var chart=am4core.create(“chartdiv”,am4charts.PieChart);
//添加数据
chart.data=[{
“国家”:“立陶宛”,
“升”:501.9
}, {
“国家”:“捷克共和国”,
“升”:301.9
}, {
“国家”:“爱尔兰”,
“升”:201.1
}, {
“国家”:“德国”,
“升”:165.8
}, {
“国家”:“澳大利亚”,
“升”:139.9升
}, {
“国家”:“奥地利”,
“升”:128.3升
}, {
“国家”:“英国”,
“升”:99
}, {
“国家”:“比利时”,
“升”:60
}, {
“国家”:“荷兰”,
“升”:50
}];
//添加和配置系列
var piesteries=chart.series.push(新的am4charts.piesteries());
pieSeries.dataFields.value=“升”;
pieSeries.dataFields.category=“国家”;
函数changeData(){
chart.data=[{
“国家”:“立陶宛”,
“升”:501.9
}, {
“国家”:“捷克共和国”,
“升”:301.9
}
];
chart.validateData();
}
正文{
字体系列:-苹果系统、BlinkMacSystemFont、“Segoe UI”、Roboto、Helvetica、Arial、无衬线、“苹果颜色表情”、“Segoe UI表情”、“Segoe UI符号”;
}
#沙特迪夫{
宽度:100%;
高度:400px;
}

点击我

我不能100%确定我是否理解了问题,但我会尽力帮助您。我检查了您的代码,我认为主要问题是因为您将整个数组推到了
图表。数据中,而不仅仅是要更改的对象。请查看我的代码:

function changeData() {
    chart.data.push({
        "country": "Lithuania",
        "litres": "501.9"
       })

 chart.validateData();
}

嗨,托默,我需要做的是替换整个数据集,而不是添加另一项。文档中说,分配新对象应该可以做到这一点,但这里有些东西不起作用嗨kathrine0,我尝试再次查看您的代码,现在由于某种原因,它起作用了,我接受了您的代码,这次我没有更改它,当我按下按钮时,整个数据都会更改为新数据。这很奇怪,他们似乎在周末修复了它:引用变更日志:“修复了-当更新
数据时,
ColumnSeries
的图表出现错误。”