2017-03-20 64 views
1

我這個MPAndroid chart library只是有點失落。MPAndroidChart - 我怎樣才能最好設置X軸值作爲字符串/日期?

我開始初學者例如here,其中建議創建對象與getValueX()和getValueY()方法,你會再添加作爲條目,像這樣的數組/列表:

List<Entry> entries = new ArrayList<Entry>(); // entry list  

for(ValueAndDateObject data : valueAndDateArrayList){ 

    // valueAndDateArrayList is the list of my own data 
    //(objects with a String X-value, and a double Y-value) 

    entries.add(new Entry(data.getValueX(), data.getValueY())); //error here 
} 

有一個錯誤,因爲Entry只需要(float x,float y)。很顯然,我可以將double作爲float來投射,但我需要x軸的日期不是浮動的。所以我做了一些更多的搜索,發現了很多關於它的Github問題,但是我似乎無法理解那些解決方案。大多數指向this in the docs之類的東西。我遇到的問題是我不明白這是如何應用於Entry(float x,float y)問題。我無法找到文檔/解決方案何時/何地應用於Entry()。

所以,當我看到有關創建格式化,然後將其設置的例子,我不明白其中entries.add(新條目())的東西進來,請問該技術取代它呢?我不知何故將其傳入?

供參考,這是我的完整的方法,前面提到的初學者例子後設計的。

public void updateUI(final ArrayList<ValueAndDateObject> valueAndDateArrayList){ 
    List<Entry> entries = new ArrayList<Entry>(); 



    for(ValueAndDateObject data : valueAndDateArrayList){ 

    /** for the sake of the example, let's say there's only one 
    * ValueAndDataObject in the list and getValueX() returns "02-27-2016" 
    * and getValueY() returns 12,345.0 
    */ 

     entries.add(new Entry(data.getValueX(), data.getValueY())); //error obviously 
    }   

    // would I add the formatter somewhere in here? And what would I "add" it to? 

    LineDataSet dataSet = new LineDataSet(entries, "Label"); 
    dataSet.setColor(Color.YELLOW); 
    dataSet.setValueTextColor(Color.BLACK); 

    LineData lineData = new LineData(dataSet); 
    lineChart.setData(lineData); 
    lineChart.invalidate(); 
} 

從我可以告訴,我必須使自己的格式化程序類,我將關閉模擬在格式化文檔鏈接字符串[]的例子。我的掛機位於「設置格式化程序」部分。只是不確定如何改變/與Entry(float x,float y)問題交互。

回答

相關問題