晚上好:
我正在收集有关函数评估数量的数据,并使用以下两种方法绘制图表。第一个对给定的 n 和 m(n<=m)运行 Romberg 积分。在该方法中,全局计数器在每次评估期间都会递增,并且我想绘制给定 R(n,m) 的评估次数的图表。第二个接收数据集并绘制图表。
public static XYSeriesCollection functionDataCollecter(){
counter = 0;
//a single line on a chart
XYSeries series;
//a collection of series
XYSeriesCollection dataset = new XYSeriesCollection();
for(int i=0;i<3;i++){
//initiate new series
series = new XYSeries("data");
for(int k = i; k<9;k++){
R_nm(k,i,0,(Math.PI)/2);
series.add(k, counter);
}
//add series to dataset
dataset.addSeries(series);
}
return dataset;
}
public static void seriesPlotter(XYSeriesCollection dataset) {
XYPlot myPlot = new XYPlot("m=2", "Math 521", "m<=n<9", "log_10(F(n,m))", dataset);
myPlot.pack();
myPlot.setVisible(true);
}
我遇到了问题。看来我必须对数据集中的每个系列进行唯一命名。我收到错误:“此数据集已包含一系列关键数据位于 org.jfree.data.xy.XYSeriesCollection.addSeries(XYSeriesCollection.java:159)
我似乎找不到一种简单的方法来附加或增加我的系列变量名称。数组让我很困惑,它们是我在在线搜索中发现的唯一选项。
我很欣赏简单的建议,因为我不是程序员,只是了解了类和对象之间的区别。我这么说是为了帮助你提出你的建议,如果你愿意帮助我的话。提前致谢。
最佳答案
好吧,我刚刚弄清楚了,它比我想象的要简单得多。该错误消息并不是指每个系列的唯一声明名称的某些要求。它指的是字符串参数:
series = new XYSeries("data");
只需更新循环中的参数,就足以获得三个彩色图:
series = new XYSeries("data"+Integer.toString(i));
我希望这对以后的人有所帮助!
关于java - JFreeChart 多系列问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39841734/