JFreeChart是一個用于創建圖表的Java庫。它提供了多種類型的圖表,包括折線圖、柱狀圖、餅圖、散點圖等。以下是一些使用JFreeChart的常見用法:
1. 創建圖表:
- 創建一個標準的折線圖:
```java
JFreeChart chart = ChartFactory.createLineChart(
"折線圖標題",
"X軸標題",
"Y軸標題",
dataset,
PlotOrientation.VERTICAL,
true,
true,
false
);
```
- 創建一個柱狀圖:
```java
JFreeChart chart = ChartFactory.createBarChart(
"柱狀圖標題",
"X軸標題",
"Y軸標題",
dataset,
PlotOrientation.VERTICAL,
true,
true,
false
);
```
- 創建一個餅圖:
```java
JFreeChart chart = ChartFactory.createPieChart(
"餅圖標題",
dataset,
true,
true,
false
);
```
2. 添加數據集:
- 創建一個類實現`org.jfree.data.xy.XYDataset`接口,用于存儲折線圖或散點圖的數據。
- 創建一個類實現`org.jfree.data.category.CategoryDataset`接口,用于存儲柱狀圖的數據。
- 創建一個類實現`org.jfree.data.general.PieDataset`接口,用于存儲餅圖的數據。
- 可以使用`DefaultXYDataset`、`DefaultCategoryDataset`和`DefaultPieDataset`等提供的默認實現。
3. 設置圖表樣式:
- 設置標題、副標題和圖例:
```java
chart.setTitle("圖表標題");
chart.setSubtitle("圖表副標題");
chart.getLegend().setVisible(true);
```
- 設置圖表背景顏色:
```java
chart.setBackgroundPaint(Color.WHITE);
```
4. 創建圖表面板:
- 可以使用`ChartPanel`類創建一個圖表面板,用于將圖表顯示在Swing應用程序中。
```java
ChartPanel panel = new ChartPanel(chart);
frame.getContentPane().add(panel);
```
5. 保存圖表為圖片:
- 可以使用`ChartUtils`類的`saveChartAsPNG`或`saveChartAsJPEG`方法將圖表保存為PNG或JPEG格式的圖片。
```java
ChartUtils.saveChartAsPNG(new File("chart.png"), chart, 500, 300);
```
以上是一些JFreeChart的常見用法,但它還有更多功能和配置選項,可以根據具體需求進行進一步的學習和使用。