1. 程式人生 > >貝塞爾曲線之折線加日期選擇器

貝塞爾曲線之折線加日期選擇器

由於客戶需求要做曲線圖,還要能選擇不同日期來顯示不同日期的曲線。無奈只能硬著頭皮去嘗試解決。

  1. 修改 Y 軸標尺間隔

    lineChartView.setRulerYSpace(value);
    
  2. 修改 X 軸標尺間隔(錨點間距)

    lineChartView.setStepSpace(value);
    
  3. 設定是否顯示錶格

    lineChartView.setShowTable(isShowTable);
    
  4. 設定是否為貝塞爾曲線

    lineChartView.setBezierLine(isBezier);
    
  5. 設定錨點是否為方形

    lineChartView.setCubePoint(isCube);
    
  6. 播放動畫

    lineChartView.playAnim();

      7.橫軸顯示當前和歷史日期

stringList.clear();
                        for(int i=0;i<infoList.size();i++){
                            DataInfo dataInfo = new DataInfo();
                            dataInfo.setReceivingTime(infoList.get(i).getReceivingTime());
                            stringList.add(dataInfo.getReceivingTime());
                        }
                       lineChartView.setLinePoints(stringList);

  8.縱軸顯示後臺返回實時資料

  datas.clear();
                        for(int i=0;i<infoList.size();i++){
                            DataInfo dataInfo = new DataInfo();
                            dataInfo.setData(infoList.get(i).getData());
                            LineChartView.Data data = new LineChartView.Data(Integer.parseInt(dataInfo.getData()));
                            datas.add(data);
                        }
                       lineChartView.setData(datas);

9.橫縱軸實時資料為空時,用假資料填充

List<String> jialist = new ArrayList<>();

        jialist.add("60000000032xx1325");
        jialist.add("12345612365xx2145");



private int[] jiaYlist = new int[]{15,15};

    for (int value : jiaYlist) {
                               
         LineChartView.Data data = new LineChartView.Data(value);
                              
          datas.add(data);
    }

10.繪製橫軸所有時間文字(由於手機螢幕太小,不方便顯示具體時間,故而採取擷取字串形式)

drawRulerXText(canvas, list.get(i).substring(11,13)+"時",linePoints[i].x, 0);

注意事項:

(1)非空判斷。(橫軸縱軸是一一對應關係)

(2)時間引數。(new Date()僅表示當前時間)

(3)原創文章,轉載請註明出處。