亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過改造從數據庫獲取 xAxis mpchart android

通過改造從數據庫獲取 xAxis mpchart android

PHP
郎朗坤 2023-08-11 16:27:10
我想從數據庫獲取 xAxis,這是不同查詢的結果,以便我的圖表可以動態顯示數據。對于靜態 mpchart 我對此沒有問題。我在onCreate中調用了這個函數。private void drawChart(){    getChartData();    BarDataSet barDataSet1 = new BarDataSet(sehat(), "Sehat");    BarDataSet barDataSet2 = new BarDataSet(sakit(), "Sakit");    barDataSet1.setColor(Color.BLUE);    barDataSet2.setColor(Color.RED);    chart.getXAxis().setDrawGridLines(false);    chart.getAxisLeft().setDrawGridLines(false);    chart.getDescription().setEnabled(false);    BarData barData = new BarData(barDataSet1, barDataSet2);    chart.setData(barData);    String[] area = new String[]{"UT PBRK", "POOL SLI", "UT TJR", "UT TRD", "UTR BATAKAN", "UT PBLP", "UT PBPN"};    XAxis xAxis = chart.getXAxis();    xAxis.setValueFormatter(new IndexAxisValueFormatter(area));    xAxis.setCenterAxisLabels(true);    xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);    xAxis.setGranularity(1);    xAxis.setGranularityEnabled(true);    chart.setDragEnabled(true);    chart.setVisibleXRangeMaximum(3);    float barSpace = 0.08f;    float groupSpace = 0.54f;    barData.setBarWidth(0.15f);    chart.getXAxis().setAxisMinimum(0);    chart.getXAxis().setAxisMaximum(0+chart.getBarData().getGroupWidth(groupSpace, barSpace)*7);    chart.getAxisLeft().setAxisMinimum(0);    chart.groupBars(0, groupSpace, barSpace);    chart.invalidate();}private ArrayList<BarEntry> sakit() {        ArrayList<BarEntry> dataEntries = new ArrayList<>();        dataEntries.add(new BarEntry(1, 2));        dataEntries.add(new BarEntry(2, 1));        dataEntries.add(new BarEntry(3, 1));        dataEntries.add(new BarEntry(4, 4));        dataEntries.add(new BarEntry(5, 3));        dataEntries.add(new BarEntry(6, 7));        dataEntries.add(new BarEntry(7, 7));        return dataEntries;    }我要使這條線變得動態。String[] area = new String[]{"UT PBRK", "POOL SLI", "UT TJR", "UT TRD", "UTR BATAKAN", "UT PBLP", "UT PBPN"};到目前為止,我已經嘗試了一些我在谷歌中找到的實驗。這個更接近。Log.d顯示結果數據。但是當我使用 String[] 時,它不會顯示在我的圖表中。
查看完整描述

1 回答

?
繁花不似錦

TA貢獻1851條經驗 獲得超4個贊

仔細看下面的代碼


for(Data get : data){

 Log.d("testing", get.getArea());

 area = new String[]{get.getArea()};

 }

區域 = new String[]{get.getArea()}; for 循環中的方法,因此每次都會正確更新區域變量,因此您最終只能在區域變量內獲得一個值,因此請在代碼中進行如下所述的更改


Int i = 0;

String[] area = new String[data.size()];

for(Data get : data){

  Log.d("testing", get.getArea());

  area[i] = get.getArea();

   i++;

  }

我希望它對你有幫助謝謝


查看完整回答
反對 回復 2023-08-11
  • 1 回答
  • 0 關注
  • 120 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號