2017-01-14 9 views
2

Как говорится в названии, я пытаюсь включить MPAndroidChart в проект и не могу получить свечи. Вот мой код:MPAndroidchart - диаграмма подсвечника пуста

List<CandleEntry> ceList = new ArrayList<>(); 
    ceList.add(new CandleEntry(0, 4.62f, 2.02f, 2.70f, 4.13f)); 
    ceList.add(new CandleEntry(1, 5.50f, 2.70f, 3.35f, 4.96f)); 
    ceList.add(new CandleEntry(2, 5.25f, 3.02f, 3.50f, 4.50f)); 
    ceList.add(new CandleEntry(3, 6f, 3.25f, 4.40f, 5.0f)); 
    ceList.add(new CandleEntry(4, 5.57f, 2f, 2.80f, 4.5f)); 
    CandleDataSet cds = new CandleDataSet(ceList, "Entries"); 
    cds.setColor(Color.BLUE); 
    cds.setValueTextColor(Color.RED); 
    CandleData cd = new CandleData(cds); 
    candleStickChart.setData(cd); 
    candleStickChart.invalidate(); 

Но я получаю это:

enter image description here

Диаграмма Xml

<com.github.mikephil.charting.charts.CandleStickChart 
    android:id="@+id/CandleStickChart" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

Тот же самый код с линией графика, кажется, работает хорошо. Любые идеи, что я могу делать неправильно? Спасибо!

+0

Просьба включить XML для части вашего приложения, которое вы используете в диаграмме. Возможно, вы используете фоновый цвет для диаграммы (android: background = "")? Если да, то нет. –

+0

Отредактировано для включения диаграммы Xml. Я не устанавливаю фон. – Jeff

ответ

3

Попробуйте заменить код следующим.

List<CandleEntry> ceList = new ArrayList<>(); 
    ceList.add(new CandleEntry(0, 4.62f, 2.02f, 2.70f, 4.13f)); 
    ceList.add(new CandleEntry(1, 5.50f, 2.70f, 3.35f, 4.96f)); 
    ceList.add(new CandleEntry(2, 5.25f, 3.02f, 3.50f, 4.50f)); 
    ceList.add(new CandleEntry(3, 6f, 3.25f, 4.40f, 5.0f)); 
    ceList.add(new CandleEntry(4, 5.57f, 2f, 2.80f, 4.5f)); 


    CandleDataSet cds = new CandleDataSet(ceList, "Entries"); 
    cds.setColor(Color.rgb(80, 80, 80)); 
    cds.setShadowColor(Color.DKGRAY); 
    cds.setShadowWidth(0.7f); 
    cds.setDecreasingColor(Color.RED); 
    cds.setDecreasingPaintStyle(Paint.Style.FILL); 
    cds.setIncreasingColor(Color.rgb(122, 242, 84)); 
    cds.setIncreasingPaintStyle(Paint.Style.STROKE); 
    cds.setNeutralColor(Color.BLUE); 
    cds.setValueTextColor(Color.RED); 
    CandleData cd = new CandleData(cds); 
    candleStickChart.setData(cd); 
    candleStickChart.invalidate(); 

При этом вы должны указать определенные свойства.

+0

Успех! Спасибо! – Jeff