2016-06-22 3 views
0

私のチャートの軸をどのように反転するかわかりません。以下は私が使用しているコードです。 今見た目の画像もご覧ください。データを縦方向に描画するのではなく、横方向に表示したいと思います。株価チャートのように見えるのは、それが実際にはそうであるからです。私はYQLを使ってシンボルの履歴データをJson形式で取得しています。LineGraphのために軸をひっくり返して表示する方法MPAndroidchart

また、データが画面全体で掬っているのがわかります。私は先月の例を見たいと思っています。ユーザーがもっとスワイプしてズームアウトすることを許可します。

私はいくつかの助けに感謝します。

float vals=0; 
      String[] resultStrs = new String[StockHistoryArray.length()]; 
      for (int i = 0; i < StockHistoryArray.length(); i++) { 


       JSONObject chartDataObj = StockHistoryArray.getJSONObject(i); 

       yVals.add(new Entry(vals,(int) Float.parseFloat(chartDataObj.getString("Adj_Close")),i+1)); 

       xVals.add(i, String.valueOf(vals)); 

       vals++; 

      } 

      LineDataSet setting = new LineDataSet(yVals, "Stock Chart"); 


      ArrayList<ILineDataSet> dataSets = new 

      ArrayList<ILineDataSet>(); 
      dataSets.add(setting); 


      LineData data = new LineData(xVals, dataSets); 


      lineChart.setData(data); 


      Legend l = lineChart.getLegend(); 
      l.setForm(Legend.LegendForm.LINE); 
      l.setTextColor(Color.WHITE); 

      XAxis x1 = lineChart.getXAxis(); 
      x1.setTextColor(Color.WHITE); 
      x1.setDrawGridLines(false); 
      x1.setAvoidFirstLastClipping(true); 

      YAxis y1 = lineChart.getAxisLeft(); 
      y1.setTextColor(Color.WHITE); 
      y1.setAxisMaxValue(120f); 
      y1.setDrawGridLines(true); 

      return null; 

このコードを実行した後のスクリーンショットです。それは1年の歴史です。

screen capture

答えて

0

あなたは次の行に間違って行っています。このような

yVals.add(new Entry(vals,(int) Float.parseFloat(chartDataObj.getString("Adj_Close")),i+1)); 

使用してチャートを描画し、正しく

yVals.add(new Entry(entryVal,entryXIndex); 

chartDataObj.getString("Adj_Close")

であなたの値は、あなたがこの
yVals.add(new Entry(Float.parseFloat(chartDataObj.getString("Adj_Close")), i);

+0

のように追加する必要がある場合は、あなたに@Madhuをありがとう、それ完璧に働いた。 – Erik

関連する問題