JFreeChart - CategoryAxis 步骤
我有一个生成数据集的方法:
private CategoryDataset createDataset(double[] arr,
String seriesName) {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for (int i = 0; i < arr.length; i++) {
dataset.addValue(arr[i], "mySeries", new Integer(i));
}
return dataset;
}
并创建条形图:
JFreeChart chart = ChartFactory.createBarChart(chartTitle,
xaxis, // domain axis label
yaxis, // range axis label
dataset, // data
orientation, // orientation
true, // include legend
true, // tooltips?
false // URLs?
);
双精度数组保存直方图数据,因此有 255 个值。
当我显示图表时,有标签 x 轴上 0 - 255 之间的所有值。我只想显示几个索引的标签(例如:0、10、20、30)。我看到在 RangeAxis 中有 setStandardTickUnits 方法。但在 CategoryAxis: 中
CategoryAxis domainAxis = plot.getDomainAxis();
我没有找到这个。
有什么帮助吗?
I have a method for generating dataset:
private CategoryDataset createDataset(double[] arr,
String seriesName) {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for (int i = 0; i < arr.length; i++) {
dataset.addValue(arr[i], "mySeries", new Integer(i));
}
return dataset;
}
and create BarChart:
JFreeChart chart = ChartFactory.createBarChart(chartTitle,
xaxis, // domain axis label
yaxis, // range axis label
dataset, // data
orientation, // orientation
true, // include legend
true, // tooltips?
false // URLs?
);
Array of doubles hold histogram data, so there are 255 values.
When I display chart there are labels for
all values from 0 - 255 on x axis. I want display only labels for several indexes (for example: 0, 10, 20, 30). I saw that in RangeAxis there is setStandardTickUnits method. But in CategoryAxis:
CategoryAxis domainAxis = plot.getDomainAxis();
I didn't find this.
Any help?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以尝试如下,
--即只需将
plot.getRangeAxis()
转换为 NumberAxis 类型即可。You can try as follows,
--that is you just need cast
plot.getRangeAxis()
to NumberAxis type.我有同样的问题。我创建了实现“Comparable”的新类,并将其用作 addValue(...) 中的最后一个参数。您可以创建类似的东西
然后而不是
使用
I had same problem. I created new class implementing 'Comparable', and use it as last parameter in addValue(...). You can create something like
And then instead of
use