Har*_*ish 17 java jfreechart bar-chart
有没有办法调整条形图中条形的宽度?
我使用以下代码创建我的图表.
final JFreeChart chart = ChartFactory.createBarChart("Report", // chart title
"Date", // domain axis label
"Number", // range axis label
dataset, // data
PlotOrientation.VERTICAL, // orientation
true, // include legend
true, // tooltips?
false // URLs?
);
Run Code Online (Sandbox Code Playgroud)
小智 21
您还可以设置条形的最大宽度.如果你有一个宽图表,但是偶尔只有一个或两个数据点,并且你不希望一个大胖子占据整个区域,这是很有用的.
CategoryPlot categoryPlot = chart.getCategoryPlot();
BarRenderer br = (BarRenderer) categoryPlot.getRenderer();
br.setMaximumBarWidth(.35); // set maximum width to 35% of chart
Run Code Online (Sandbox Code Playgroud)
您不能直接指定条的宽度,但有一些可以更改的属性会影响宽度.您应该查看由CategoryAxis定义的lowerMargin,upperMargin和categoryMargin属性或BarRenderer中的itemMargin属性.
例如:
BarRenderer renderer = (BarRenderer) chart.getCategoryPlot().getRenderer();
renderer.setItemMargin(.1);
Run Code Online (Sandbox Code Playgroud)
指定的双精度setItemMargin(double percent)是类别轴的总长度的百分比,该轴将用于同一类别中的条之间的空格(默认为.2或20%).该值越小,条形越大.
小智 5
在使用正边距和零获得无结果后,我尝试使用负数itemMargin来查看会发生什么.酒吧开始越来越厚.不过,我不知道是否推荐,因为如果没有足够的可用空间,你会得到重叠.
BarRenderer renderer = (BarRenderer) chart.getCategoryPlot().getRenderer();
renderer.setItemMargin(-2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30506 次 |
| 最近记录: |