настройки двигателя ачарт - PullRequest
0 голосов
/ 02 февраля 2012

Я пытался использовать движок achart, но документация несколько неясна.Я также попытался просмотреть примеры.

Может кто-нибудь объяснить, как увеличить толщину линий на прикрепленной гистограмме?Кроме того, я хотел бы разделить каждый столбец на отдельные серии, но мне не повезло (мой код находится под изображением).Я работаю над этим вопросом очень долго!

enter image description here

public XYMultipleSeriesRenderer getBarDemoRenderer() {
     Log.d(LOG_TAG, "Entering getBarDemoRenderer");
     XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();   
     renderer.setAxisTitleTextSize(18);
     renderer.setChartTitleTextSize(20);
     renderer.setLabelsTextSize(18);
     renderer.setLegendTextSize(14);
     renderer.setMargins(new int[] {20, 30, 15, 0});
     int[] color = {Color.RED, Color.CYAN,Color.YELLOW, Color.LTGRAY,Color.MAGENTA, Color.GREEN, Color.WHITE};

     for(int i=0; i<7; i++){
         SimpleSeriesRenderer r = new SimpleSeriesRenderer();
         r.setColor(color[i]);
         renderer.addSeriesRenderer(r);  
     }

     int renderCount = renderer.getSeriesRendererCount();
     Log.d(LOG_TAG, "Renderer series count =  " + renderCount);

     return renderer;
 }

 private XYMultipleSeriesDataset getApplianceDataset() {

     XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();

     try{

         CategorySeries series = null;
         for (Map.Entry<String,Float> entry : list.entrySet()) {
             String key = entry.getKey();
             series = new CategorySeries (key);
             String b=String.valueOf(entry.getValue());
             double value=Double.valueOf(b);
             series.add(value);   
             dataset.addSeries(series.toXYSeries());
         }

     }catch(IllegalArgumentException e){
         Log.e(LOG_TAG, "IllegalArgumentException " + e.toString());
         Toast.makeText(this, "Unable to show chart", Toast.LENGTH_LONG).show();
     }

     int dataSeriesCount = dataset.getSeriesCount();
     return dataset;
 }


    private void setChartSettings(XYMultipleSeriesRenderer renderer) {         
        renderer.setChartTitle("Test Bar Chart");
        renderer.setChartTitleTextSize(20);
        renderer.setXTitle("Appliance");
        renderer.setYTitle("Watt Hours (wh)");
        renderer.setXAxisMax(3);
        renderer.setXAxisMin(0.0);
        renderer.setYAxisMax(1800);
        renderer.setYAxisMin(0);   
    }

1 Ответ

0 голосов
/ 02 февраля 2012

в setChartSettings дают

        renderer.setBarSpacing(1.0f);
        renderer.setMargins(new int[] {10, 10, 10, 0});
...