2015-03-09 7 views
2

Я новичок в использовании MPAndroidChart, и я застрял в этой проблеме. Когда я рисую PieChart с моими значениями и выделяю один из фрагментов, цвет остальных фрагментов исчезает. Это круговая диаграмма, прежде чем выбрать кусочек (я не могу размещать фотографии, потому что я только что создал учетную запись):круговая диаграмма mpandroidchart (исчезают слайды)

http://s27.postimg.org/6ijte280j/Screenshot_2015_03_09_11_27_19.png

И это круговая диаграмма, когда я выбираю кусочек ниже («Ruben»):

http://s7.postimg.org/60bwczpyz/Screenshot_2015_03_09_11_27_33.png

ломтик «Рубен» подсвечивается, а фон другого исчезает.

Это метод, который создает PieChart:

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
      WindowManager.LayoutParams.FLAG_FULLSCREEN); 

    setContentView(R.layout.activity_display_pie_chart); 

    mChart = (PieChart) findViewById(R.id.chart1); 
    mChart.setHoleColorTransparent(true); 

    mChart.setHoleRadius(60f); 

    mChart.setDrawCenterText(true); 

    mChart.setDrawHoleEnabled(true); 

    mChart.setRotationAngle(0); 

    mChart.setRotationEnabled(true); 

    mChart.setOnChartValueSelectedListener(this); 

    mChart.setCenterText("Test Graph"); 

    ArrayList<Entry> yVals1 = new ArrayList<Entry>(); 

    yVals1.add(new Entry((float) 20.0, yVals1.size()-1)); 
    yVals1.add(new Entry((float) 30.0, yVals1.size()-1)); 

    ArrayList<String> xVals = new ArrayList<String>(); 

    xVals.add("Ruben"); 
    xVals.add("Claudio"); 

    PieDataSet dataSet = new PieDataSet(yVals1, "Idades Porlande"); 
    dataSet.setSliceSpace(3f); 

    PieData data = new PieData(xVals, dataSet); 
    mChart.setData(data); 
    } 

То, что вы, ребята, думаете, это проблема?

С уважением.

+0

mChart.setOnChartValueSelectedListener(); это работает @Ruben – Praneeth

ответ

4

Проблема с строчках ниже

yVals1.add(new Entry((float) 20.0, yVals1.size()-1)); 
yVals1.add(new Entry((float) 30.0, yVals1.size()-1)); 

здесь, в конструкторе Входа (поплавок ВАЛ, INT xIndex), xIndex начинается с 0,1,2 .. так далее.

Так что измените значения индексов, которые вы указали.

yVals1.add(new Entry((float) 20.0, 0)); 
yVals1.add(new Entry((float) 30.0, 1)); 
+0

Это выглядит как решение :-) На самом деле это было глупостью для переключения x и y в конструкторе. Однако сейчас практически невозможно изменить: -D –

+0

Это был ответ! Большое спасибо: D –

+0

@RubenNunes Примите этот ответ, чтобы он был удален из тега без ответа. – Pooja