2013-10-09 69 views
0

我使用AChartEngine在Android上創建餅圖。沒關係。 但我想刪除「線連接到標籤從派」。Android PieChart使用AChartEngine

這是我的代碼:

// Instantiating a renderer for the Pie Chart 
    DefaultRenderer defaultRenderer = new DefaultRenderer();  
    for(int i = 0 ;i<distribution.length;i++){   
     SimpleSeriesRenderer seriesRenderer = new SimpleSeriesRenderer();  
     seriesRenderer.setColor(colors[i]); 
     seriesRenderer.setDisplayChartValues(true); 
     seriesRenderer.setDisplayChartValuesDistance(0); 
     seriesRenderer.setShowLegendItem(false); 
     // Adding a renderer for a slice 
     defaultRenderer.addSeriesRenderer(seriesRenderer); 
    } 

    defaultRenderer.setZoomButtonsVisible(false); 
    defaultRenderer.setClickEnabled(false); 
    defaultRenderer.setPanEnabled(true); 
    defaultRenderer.setAntialiasing(true); 
    defaultRenderer.setShowLabels(true); 
    defaultRenderer.setShowLegend(false); 
    // Creating an intent to plot bar chart using dataset and multipleRenderer  
    Intent intent = ChartFactory.getPieChartIntent(getBaseContext(), distributionSeries , defaultRenderer, "AChartEnginePieChartDemo");  
    // Start Activity 
    startActivity(intent); 

請參閱圖像清楚地知道:

現在:http://i.stack.imgur.com/JwM1B.png

我想:http://i.stack.imgur.com/olWB2.png

請幫幫我!

謝謝!

defaultRenderer.setShowLabels(false); 

如果你想刪除只有傳說:

回答

1

如果你只想刪除標籤試試這個..

defaultRenderer.setShowLegend(false); 
+0

我已更新我的問題!請再次檢查,謝謝! – user2537590

+0

@ user2537590我認爲這是不可能的..我會搜索然後我會打電話給你.. – Hariharan

+0

是的,如果你知道另一個Chart API可以做到這一點,請告訴我。謝謝! – user2537590

1

如果你只想刪除標籤:renderer.setShowLabels(false);
如果您只想刪除圖例:renderer.setShowLegend(false);

+0

我已更新我的問題!請再次檢查,謝謝! – user2537590

+0

您也可以使用renderer.setDisplayValues(true)來顯示切片上的值。 –

+0

@丹:謝謝,但我想顯示[http://i.stack.imgur.com/olWB2.png] – user2537590

0
final CategorySeries series = new CategorySeries("pie"); 

for (int i = 0; i < Xaxes_value.size(); i++) { 
      series.add(Xaxes_value.get(i) + "", 
        Long.parseLong(yaxes_value.get(i))); 
     } 


    List<Integer> colors = new ArrayList<Integer>(); 
    int[] colorr = { Color.parseColor("#56ADDB"), 
      Color.parseColor("#F59331"), Color.parseColor("#73C83C"), 
      Color.parseColor("#948D8B"), Color.parseColor("#E54273"), 
      Color.parseColor("#FFD34E"), Color.parseColor("#2A86D6"), 
      Color.parseColor("#00BFC0"), Color.parseColor("#95AC5F"), 
      Color.parseColor("#FF8497") }; 

    for (int i = 0; i < yaxes_value.size(); i++) { 
     colors.add(colorr[i]); 

    } 
    renderer = new DefaultRenderer(); 
    for (int color = 0; color < colors.size(); color++) { 
     SimpleSeriesRenderer r = new SimpleSeriesRenderer(); 
     r.setColor(colors.get(color)); 
     r.setDisplayBoundingPoints(false); 
     // r.setDisplayChartValuesDistance(20); 
     r.setDisplayChartValues(false); 
     r.setChartValuesTextSize(18); 
     r.setStroke(BasicStroke.SOLID); 
     renderer.addSeriesRenderer(r); 
    } 
    // renderer.isInScroll(); 

    renderer.setZoomEnabled(false); 
    renderer.setPanEnabled(false); 
    renderer.setZoomButtonsVisible(false); // set zoom button in Graph 
    renderer.setApplyBackgroundColor(false); 
    renderer.setBackgroundColor(Color.WHITE); // set background color 
    renderer.setChartTitle("Pie Chart"); 
    renderer.setLabelsColor(Color.BLACK); 
    renderer.setMargins(new int[] { 20, 100, 20, 15 }); 
    renderer.setLabelsTextSize(20); 
    renderer.setChartTitleTextSize((float) 30); 
    renderer.setShowLabels(false); 
    renderer.setLegendTextSize(25); 
    renderer.setDisplayValues(true); 
    renderer.setStartAngle(90); 
    GraphicalView mChart = ChartFactory.getPieChartView(getApplicationContext(), series, 
      renderer); 

    layout_graph.addView(mChart);