gpt4 book ai didi

javascript - 一张图表中的几个表使用 amchart

转载 作者:行者123 更新时间:2023-11-28 06:52:11 24 4
gpt4 key购买 nike

我有一个问题要问你。我的图表数据如下所示:

var chartDataFull=[]
chartData1=[{category:1, value:2},{category:2, value:3},{category:3, value:6}];
chartData2=[{category:1, value:5},{category:2, value:1},{category:3, value:2}];
chartData3=[{category:1, value:3},{category:2, value:9},{category:3, value:7}];

chartDataFull.push(chartData1, chartData2, chartData3);

我希望所有三个表都用 amchart 放在一张图表上(不同的“值”相同的字段“类别”)。每个都将由一个单独的列表示。我该怎么做?

最佳答案

使用您的代码填充图表(通过索引访问多维数组):

var chartDataFull=[]
chartData1=[{category:1, value:2},{category:2, value:3},{category:3, value:6}];
chartData2=[{category:1, value:5},{category:2, value:1},{category:3, value:2}];
chartData3=[{category:1, value:3},{category:2, value:9},{category:3, value:7}];

chartDataFull.push(chartData1);
chartDataFull.push(chartData2);
chartDataFull.push(chartData3);

第一个解决方案:

在图表中仅显示一个数据集,并可以在它们之间进行切换。

代码:

chart.dataProvider = chartDataFull[1]; //switch your index here if you want another graph based on datasets. Range (0-2).

  chart = new AmCharts.AmSerialChart();
chart.autoMarginOffset = 0;
chart.dataProvider = chartDataFull[1]
chart.categoryField = "category";
chart.startDuration = 1;

fiddle 示例:http://jsfiddle.net/Cww3D/448/

第二种解决方案

此解决方案最接近您的需求。这是通过连接数组来完成的。您已经提到您的数组不是静态的,但您仍然可以使用 concat() 函数调整它以满足您的需要。

代码:

chartDataFull.push(chartData1);
chartDataFull.push(chartData2);
chartDataFull.push(chartData3);
var children = chartData1.concat(chartData2,chartData3);

网址 fiddle :http://jsfiddle.net/eugensunic/Cww3D/452/

官方示例

fiddle 示例:

网址 fiddle :http://jsfiddle.net/amcharts/u3ypB/

您可以看到,当他们显示其他数据集时,他们将其放置在另一个图表中。

结论:

不幸的是,一旦您使用 dataProvider 属性填充数据集,就差不多了。您已经创建了图表,并且无法以插入其他数据的方式修改它。一旦填充了此操作属性,您就完成了数据填充。

关于javascript - 一张图表中的几个表使用 amchart,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32865393/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com