1

我有一个条形图,我正在使用三个不同的系列。所有数据都正确显示,但该系列使用每个系列的不同宽度的条进行渲染。我不能让不同系列的条具有相同的宽度。

SDFSeries = new XYSeries("Seven Day Forecast"); 
FPSeries = new XYSeries("Forecast Peak"); 
APDSeries = new XYSeries("Actual Peak to Date"); 

XYSeriesRenderer sdfRenderer = new XYSeriesRenderer(); 
sdfRenderer.setColor(Color.rgb(90, 152, 253));
sdfRenderer.setDisplayChartValues(true); 
sdfRenderer.setChartValuesTextSize(18);


XYSeriesRenderer fpRenderer = new XYSeriesRenderer(); 
fpRenderer.setColor(Color.rgb(255, 255, 0)); 
fpRenderer.setDisplayChartValues(true);
fpRenderer.setChartValuesTextSize(18);

XYSeriesRenderer apdRenderer = new XYSeriesRenderer(); 
apdRenderer.setColor(Color.rgb(255, 0, 0)); 
apdRenderer.setDisplayChartValues(true);
apdRenderer.setChartValuesTextSize(18);

multiRenderer.setXLabels(0); 
multiRenderer.setChartTitle("7 Day Outlook - Maximum Demand"); 
multiRenderer.setXTitle(""); 
multiRenderer.setYTitle("MegaWatts"); 
multiRenderer.addSeriesRenderer(apdRenderer);         
multiRenderer.addSeriesRenderer(fpRenderer);
multiRenderer.addSeriesRenderer(sdfRenderer);
multiRenderer.setMargins(new int[] { 10, 65, 10, 15 });  
multiRenderer.setAxisTitleTextSize(16);
multiRenderer.setChartTitleTextSize(30);
multiRenderer.setLabelsTextSize(15);
multiRenderer.setLegendTextSize(20);
multiRenderer.setLegendHeight(40);
multiRenderer.setBarSpacing(.5);
multiRenderer.setXLabelsAlign(Align.CENTER);
multiRenderer.setYLabelsAlign(Align.RIGHT);
4

1 回答 1

0

该问题是由具有单个项目的系列以不同方式显示条形宽度引起的。你有一些选择:

  • 每个系列至少添加 2 个项目。
  • 用于renderer.setBarWidth()单品系列。
于 2013-04-02T17:54:51.710 回答