jfreechart 折线图如何设置横坐标每隔n个坐标值显示一次
时间: 2024-03-12 13:47:59 浏览: 238
你可以使用 `org.jfree.chart.axis.NumberAxis` 类的 `setTickUnit` 方法来设置坐标轴的间隔。例如,如果你想要每隔2个坐标值显示一次横坐标,可以这样设置:
```
NumberAxis xAxis = (NumberAxis) plot.getDomainAxis();
xAxis.setTickUnit(new NumberTickUnit(2));
```
其中,`plot` 是你的折线图对象。这样设置后,折线图的横坐标轴就会按照每隔2个坐标值显示一次。你可以根据需要调整 `setTickUnit` 方法中的参数来实现不同的间隔设置。
相关问题
jfreechart 新建一个折线图并设置横坐标每隔n个坐标值显示一次
以下是使用 JFreeChart 创建折线图并设置横坐标每隔 n 个坐标值显示一次的示例代码:
```java
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.NumberTickUnit;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.XYPlot;
import org.jfree.data.xy.DefaultXYDataset;
public class LineChartExample {
public static void main(String[] args) {
// 新建 XY 数据集
DefaultXYDataset dataset = new DefaultXYDataset();
double[][] data = new double[][] {{1, 2, 3, 4, 5}, {3, 4, 2, 6, 8}};
dataset.addSeries("Series 1", data);
// 创建折线图
JFreeChart chart = ChartFactory.createXYLineChart(
"Line Chart Example", // 图表标题
"X", // 横坐标标签
"Y", // 纵坐标标签
dataset, // 数据集
PlotOrientation.VERTICAL, // 图表方向
true, // 是否显示图例
true, // 是否生成工具提示
false // 是否生成 URLs
);
// 设置横坐标间隔
NumberAxis xAxis = (NumberAxis) ((XYPlot) chart.getPlot()).getDomainAxis();
xAxis.setTickUnit(new NumberTickUnit(2));
// 显示图表
ChartFrame frame = new ChartFrame("Line Chart Example", chart);
frame.pack();
frame.setVisible(true);
}
}
```
在该示例中,首先创建了一个 `DefaultXYDataset` 对象,并向其中添加了一组数据。然后使用 `ChartFactory` 类的 `createXYLineChart` 静态方法创建了一个折线图,设置了图表标题、横坐标标签、纵坐标标签、数据集等属性。接着,获取折线图的横坐标轴对象,并使用 `setTickUnit` 方法设置了横坐标的间隔为 2。最后,使用 `ChartFrame` 类创建了一个窗口,并在其中显示了折线图。
阅读全文