Achartengine条形图,每个栏上方都有标签(单杠)

时间:2014-08-19 06:51:34

标签: android bar-chart achartengine

我是使用achartengine库进行安卓的新手,请耐心等待。我希望我的水平条形图在每个条形图上方都有标签。我试图操纵渲染器并寻找解决方案,但此时没有运气。 以下是我想要的输出:

enter image description here

到目前为止,这是我创建条形图的代码:

public GraphicalView getChartView(Context context){     int x = 8000,y = 4000,z = 0;

CategorySeries series1 = new CategorySeries("Bar1");
CategorySeries dummySeries = new CategorySeries("Bar dummy");
CategorySeries series2 = new CategorySeries("Bar2");

series1.add(x);
dummySeries.add(z);
series2.add(y);
XYMultipleSeriesDataset dataSet = new XYMultipleSeriesDataset(); 
dataSet.addSeries(series1.toXYSeries()); 
dataSet.addSeries(dummySeries.toXYSeries());
dataSet.addSeries(series2.toXYSeries());


XYSeriesRenderer renderer = new XYSeriesRenderer(); 
renderer.setColor(context.getResources().getColor(
        R.color.barchart_green));

renderer.setDisplayChartValues(true);
renderer.setChartValuesSpacing(60);
renderer.setLineWidth((float) 10.5d);
renderer.setChartValuesTextSize(context.getResources().getDimension(
        R.dimen.salesquota_axis_textsize));

XYSeriesRenderer renderer2 = new XYSeriesRenderer(); 
renderer2.setColor(context.getResources().getColor(
        R.color.barchart_orange));

renderer2.setChartValuesSpacing(60);
renderer2.setLineWidth((float) 10.5d);
renderer2.setDisplayChartValues(true);
renderer2.setChartValuesTextSize(context.getResources().getDimension(
        R.dimen.salesquota_axis_textsize));

XYSeriesRenderer dummyRenderer = new XYSeriesRenderer(); 
dummyRenderer.setColor(Color.WHITE);

dummyRenderer.setDisplayChartValues(false);
dummyRenderer.setChartValuesSpacing((float) 10.5d);
dummyRenderer.setLineWidth((float) 10.5d);

XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer(); 
mRenderer.addSeriesRenderer(renderer);
mRenderer.addSeriesRenderer(dummyRenderer);
mRenderer.addSeriesRenderer(renderer2);
// mRenderer.setXTitle("xValues");

mRenderer.setShowLegend(true);
mRenderer.setShowLabels(false);
mRenderer.setShowAxes(false);

mRenderer.addXTextLabel(0, "Quota");
mRenderer.addXTextLabel(1, "Sales status");



mRenderer.setPanEnabled(false, false);
mRenderer.setShowGrid(false);
mRenderer.setZoomEnabled(false, false);
mRenderer.setBarWidth(context.getResources().getDimension(
        R.dimen.salesquota_barwidth));

mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.WHITE);
mRenderer.setXAxisMin(0);
mRenderer.setXAxisMax(4);

mRenderer.setYAxisMax(10000);
mRenderer.setYAxisMin(0);
mRenderer.setMarginsColor(context.getResources()
        .getColor(R.color.White));

mRenderer.setOrientation(Orientation.VERTICAL);


mChartView = ChartFactory.getBarChartView(context, dataSet, mRenderer,
        Type.DEFAULT);

return mChartView;

}

然后我将返回的mChartView添加到我的LinearLayout中:

 LinearLayout layout = (LinearLayout) myFragmentView
                .findViewById(R.id.salesquota_layout);
        SalesStackedBarChart barChartStacked = new SalesStackedBarChart();
        layout.addView(barChartStacked.getChartView(getActivity()));

任何帮助将不胜感激。非常感谢你!

0 个答案:

没有答案