如何用Java和JFreeChart库逐步绘制一个柱状图,且x轴的标签居中显示,不选中x轴标签角度
时间: 2025-01-27 15:12:15 浏览: 45
好的,我来为您介绍如何使用Java和JFreeChart库逐步绘制一个柱状图,并设置x轴标签居中显示且不旋转角度。以下是具体步骤:
1. 首先,添加JFreeChart库到您的项目中。您可以通过Maven或直接下载JAR文件来完成。
2. 创建一个数据集:
```java
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(1, "Series1", "Category1");
dataset.addValue(4, "Series1", "Category2");
dataset.addValue(3, "Series1", "Category3");
```
3. 创建柱状图:
```java
JFreeChart chart = ChartFactory.createBarChart(
"示例柱状图", // 图表标题
"类别", // x轴标签
"值", // y轴标签
dataset // 数据集
);
```
4. 获取绘图区域并设置x轴标签居中显示:
```java
CategoryPlot plot = chart.getCategoryPlot();
CategoryAxis axis = plot.getDomainAxis();
axis.setCategoryLabelPositions(CategoryLabelPositions.CENTER);
```
5. 禁止旋转x轴标签:
```java
axis.setCategoryLabelPositions(CategoryLabelPositions.STANDARD);
```
6. 完整代码示例:
```java
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.CategoryLabelPositions;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.data.category.DefaultCategoryDataset;
import javax.swing.*;
public class BarChartExample {
public static void main(String[] args) {
// 创建数据集
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(1, "Series1", "Category1");
dataset.addValue(4, "Series1", "Category2");
dataset.addValue(3, "Series1", "Category3");
// 创建柱状图
JFreeChart chart = ChartFactory.createBarChart(
"示例柱状图",
"类别",
"值",
dataset
);
// 设置x轴标签居中显示
CategoryPlot plot = chart.getCategoryPlot();
CategoryAxis axis = plot.getDomainAxis();
axis.setCategoryLabelPositions(CategoryLabelPositions.CENTER);
// 禁止旋转x轴标签
axis.setCategoryLabelPositions(CategoryLabelPositions.STANDARD);
// 显示图表
JFrame frame = new JFrame("JFreeChart Bar Chart Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new ChartPanel(chart));
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
```
这段代码将创建一个简单的柱状图,x轴标签居中显示且不旋转。您可以根据需要进一步自定义图表的外观和内容。
阅读全文
相关推荐

















