使用JFreeChart

时间:2015-04-27 11:54:57

标签: java swing jfreechart bar-chart

我从我的数据库中获取有两列的值。我想在单击按钮时创建条形图并在面板中显示条形图。我如何使用JFreeChart做到这一点?我正在使用mysql数据库。

1 个答案:

答案 0 :(得分:3)

我解决了我的问题。只需阅读一点关于JFreechart的内容。这是解决方案:

    String toc = "";
    int summary = 0;
    try {
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        Class.forName(JDBC_DRIVER);

        con = DriverManager.getConnection(DB_URL, USER, PASS);

        String query = "Select toc as TypeOfCall,Sum(toc) as SummaryOfCalls from processeddata_table group by toc";

        ps = con.prepareStatement(query);
        rs = ps.executeQuery();
        while (rs.next()) {
            toc = rs.getString("TypeOfCall");
            summary = rs.getInt("SummaryOfCalls");
            dataset.setValue(summary, toc, toc);
        }
        JFreeChart chart = ChartFactory.createBarChart("Call cost", "TypeOfCall", "SummaryOfCalls", dataset, PlotOrientation.VERTICAL, false, true, false);
        CategoryPlot p = chart.getCategoryPlot();

         //p.setRangeGridlinePaint(Color.BLUE);

        ChartPanel panel = new ChartPanel(chart);
        panel.setVisible(true);
        panel.setSize(200, 200);
        display_graph.add(panel);

    } catch (ClassNotFoundException | SQLException e) {

    }