我不确定为什么这里会发生错误?我正在使用JFreeChart API并尝试创建一个xy系列。我已经在代码下面添加了错误消息。主方法只是简单地调用这个方法来运行它
public class CreateGraph {
private String fileInput="F:/FunctionTrader/testFiles/test1.txt";
private XYSeries bunch=new XYSeries(null);
public void test() throws FileNotFoundException, IOException {
try (BufferedReader br = new BufferedReader(new FileReader(this.fileInput))) {
String modBarVals;
while ((modBarVals=br.readLine()) != null ){
String[] split = modBarVals.split("\s+");
double x = Double.parseDouble(split[0]);
double y = Double.parseDouble(split[1]);
bunch.add(x,y); //error occurs here?
}
System.out.println(bunch.getItemCount());
}
}
}
异常堆栈跟踪:
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.IllegalArgumentException: Null 'key' argument.
at org.jfree.chart.util.ParamChecks.nullNotPermitted(ParamChecks.java:65)
at org.jfree.data.general.Series.<init>(Series.java:120)
at org.jfree.data.general.Series.<init>(Series.java:110)
at org.jfree.data.xy.XYSeries.<init>(XYSeries.java:172)
at org.jfree.data.xy.XYSeries.<init>(XYSeries.java:145)
at IO2x.CreateGraph.<init>(CreateGraph.java:17)
at IO2x.MainClass.<clinit>(MainClass.java:17)
stacktrace告诉您不能在for XYSeries
中使用null
Comparable
键。你可以使用
private XYSeries bunch = new XYSeries("My Data");