JFreechart教程

JFreeChart 折线图

JFreeChart-Line Chart

折线图是由直线段连接的一系列点。信息通过这些连接线显示。折线图表示数据如何以相同的时间频率变化。
下图显示了 JFreeChart 库中包含的折线图的一些演示版本:
折线图演示 1:
JFreeChart 折线图演示 1
折线图演示 2 :
JFreeChart 折线图演示 2
折线图演示3:
JFreeChart Line Chart Demo 3
折线图演示 4:
JFreeChart 折线图演示 4

折线图示例

让我们考虑一个示例数据,它显示了我们网站上的频繁流量www.lidihuo .com。
日期 每日总访问量
2016-12-19 200
2016-12-20 150
2016-12-21 100
2016-12-22 210
2016-12-23 240
2016-12-24 195
2016-12-25 245
日期 唯一身份访问者总数
2016-12-19 150
2016-12-20 130
2016-12-21 95
2016-12-22 195
2016-12-23 200
2016-12-24 180
2016-12-25 230
以下代码根据上述示例数据创建折线图:

LineChartExample.java

import javax.swing.JFrame;
import javax.swing.SwingUtilities;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.category.DefaultCategoryDataset;
public class LineChartExample extends JFrame {
  private static final long serialVersionUID = 1L;
  public LineChartExample(String title) {
    super(title);
    // Create dataset
    DefaultCategoryDataset dataset = createDataset();
    // Create chart
    JFreeChart chart = ChartFactory.createLineChart(
        "Site Traffic", // Chart title
        "Date", // X-Axis Label
        "Number of Visitor", // Y-Axis Label
        dataset
        );
    ChartPanel panel = new ChartPanel(chart);
    setContentPane(panel);
  }
  private DefaultCategoryDataset createDataset() {
    String series1 = "Visitor";
    String series2 = "Unique Visitor";
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.addValue(200, series1, "2016-12-19");
    dataset.addValue(150, series1, "2016-12-20");
    dataset.addValue(100, series1, "2016-12-21");
    dataset.addValue(210, series1, "2016-12-22");
    dataset.addValue(240, series1, "2016-12-23");
    dataset.addValue(195, series1, "2016-12-24");
    dataset.addValue(245, series1, "2016-12-25");
    dataset.addValue(150, series2, "2016-12-19");
    dataset.addValue(130, series2, "2016-12-20");
    dataset.addValue(95, series2, "2016-12-21");
    dataset.addValue(195, series2, "2016-12-22");
    dataset.addValue(200, series2, "2016-12-23");
    dataset.addValue(180, series2, "2016-12-24");
    dataset.addValue(230, series2, "2016-12-25");
    return dataset;
  }
  public static void main(String[] args) {
    SwingUtilities.invokeLater(()-> {
      LineChartExample example = new LineChartExample("Line Chart Example");
      example.setAlwaysOnTop(true);
      example.pack();
      example.setSize(600, 400);
      example.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
      example.setVisible(true);
    });
  }
}
    
输出:
JFreeChart bar Chart example
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4