日期:2014-05-20  浏览次数:20753 次

用jfreechart的在jpanel中添加图表的问题
Java code
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        DefaultCategoryDataset DataSet = new DefaultCategoryDataset();
        DataSet.addValue(300, "number", "apple");
        DataSet.addValue(400, "number", "barara");
        DataSet.addValue(250, "number", "pear");
        DataSet.addValue(330, "number", "milk");
        DataSet.addValue(420, "number", "cheese");
        //创建柱形图
        JFreeChart chart = ChartFactory.createBarChart3D("Catogram",
                "Fruit", "Sale", DataSet, PlotOrientation.VERTICAL,
                false, false, false);
        //用来放置图表
        ChartPanel panel = new ChartPanel(chart);      
        jPanel10.add(10); //jPanel10是我已经添加好的面板
        
    }   


正在做一个成绩分析系统,我想做一个图形的分析,点击按钮在Jpanel10中输出我的图表,上面是按钮的事件,可是怎么点按钮都没反应。如果我另外新建一个JFrame,然后在Jframe中添加这个Jpanel,输出就正常。为什么?我不想再新建JFrame,因为我界面已经做好了,预留了一个jpanel打算输出图形的,结果不行。

------解决方案--------------------
会不会是因为jPanel10太小导致显示不正常

在jPanel10.add();后加一句jPanel10.setPreferredSize(new Dimension(200, 100));试试
------解决方案--------------------
应该是你代码语句的前后顺序对
就像setVisible的前后顺不对就不会显示一样
还有把完整代码贴出来才好测试