Java applet打开多窗口jfree图表
我正在使用jfreechart创建一个三元图表,并将其作为小程序运行。 图表显示正确,但当我将其扩展到一个小程序类并覆盖绘制函数时,它会为图形打开5个不同的窗口,不知道为什么 这是代码,如果你能帮我的话Java applet打开多窗口jfree图表,java,jfreechart,japplet,Java,Jfreechart,Japplet,我正在使用jfreechart创建一个三元图表,并将其作为小程序运行。 图表显示正确,但当我将其扩展到一个小程序类并覆盖绘制函数时,它会为图形打开5个不同的窗口,不知道为什么 这是代码,如果你能帮我的话 @Override public void paint(Graphics g) { DefaultXYDataset dataset = new DefaultXYDataset(); dataset.addSeries("Red circles"
@Override
public void paint(Graphics g) {
DefaultXYDataset dataset = new DefaultXYDataset();
dataset.addSeries("Red circles",new double[][]{{0, 1, 0.5,0.1, 0.6, 0.2, 0}, {1, 0, 0.5, 0.2, 0.3, 0.6, 0}});
XYPlot plot = new TriangularXYPlot();
plot.setDataset(dataset);
XYItemRenderer renderer = plot.getRenderer();
renderer.setSeriesPaint(0, Color.RED);
renderer.setSeriesShape(0, new Ellipse2D.Double(-1, -1, 2, 2)); //point shape
JFreeChart chart = new JFreeChart("Triangular Demo", new Font("Tahoma", 2, 18), plot, true);
JFrame frame = new JFrame("XY Plot Demo");
ChartPanel cPanel = new ChartPanel(chart);
frame.getContentPane().add(cPanel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
cPanel.setPreferredSize(new java.awt.Dimension(1000, 540));
frame.pack();
frame.setVisible(true);
chart.draw( (Graphics2D)g,getBounds());
}
我想澄清一下,当我在这里使用代码时:
我找到了一个正确的窗口
但当我补充说:
JFrame frame = new JFrame("XY Plot Demo");
ChartPanel cPanel = new ChartPanel(chart);
frame.getContentPane().add(cPanel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
cPanel.setPreferredSize(new java.awt.Dimension(1000, 540));
frame.pack();
frame.setVisible(true);
我又多窗口了。如果我不使用这个,输出窗口就会变得非常小