本文共 3261 字,大约阅读时间需要 10 分钟。
今天做客户端的时候,客户有个我没做过的需求
B84359DCDA6B4A0E7EC13B6B15077363
贴一下源码(若有需要使用的网友,需要自行下载hellochart包,或者去github找链接):
MainActivity
package com.example.h.text;import android.graphics.Color;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import java.util.Random;import java.util.Timer;import java.util.TimerTask;import lecho.lib.hellocharts.gesture.ContainerScrollType;import lecho.lib.hellocharts.gesture.ZoomType;import lecho.lib.hellocharts.model.Axis;import lecho.lib.hellocharts.model.AxisValue;import lecho.lib.hellocharts.model.Line;import lecho.lib.hellocharts.model.LineChartData;import lecho.lib.hellocharts.model.PointValue;import lecho.lib.hellocharts.model.ValueShape;import lecho.lib.hellocharts.model.Viewport;import lecho.lib.hellocharts.view.LineChartView;public class MainActivity extends AppCompatActivity { private LineChartView lineChart; private ArrayListvalues = new ArrayList ();//折线上的点 int i=1; Line line = null; private Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn=findViewById(R.id.btn); lineChart = (LineChartView)findViewById(R.id.chart); values.add(new PointValue(0, 0)); line = new Line(values).setColor(Color.BLUE);//声明线并设置颜色 line.setCubic(false);//设置是平滑的还是直的 line.setHasPoints(false); ArrayList lines = new ArrayList (); lines.add(line); lineChart.setInteractive(true);//设置图表是可以交互的(拖拽,缩放等效果的前提) lineChart.setZoomType(ZoomType.HORIZONTAL_AND_VERTICAL);//设置缩放方向 LineChartData data = new LineChartData(); Axis axisX = new Axis();//x轴 Axis axisY = new Axis();//y轴 data.setAxisXBottom(axisX); data.setAxisYLeft(axisY); data.setLines(lines); lineChart.setLineChartData(data);//给图表设置数据 btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Random r = new Random(); int i1 = r.nextInt(80 - 20) + 20; values.add(new PointValue(i,i1 )); if(values.size()>12){ values.remove(0); } i++; line = new Line(values).setColor(Color.BLUE);//声明线并设置颜色 line.setCubic(false);//设置是平滑的还是直的 line.setHasPoints(false); ArrayList lines = new ArrayList (); lines.add(line); lineChart.setInteractive(true);//设置图表是可以交互的(拖拽,缩放等效果的前提) lineChart.setZoomType(ZoomType.HORIZONTAL_AND_VERTICAL);//设置缩放方向 LineChartData data = new LineChartData(); Axis axisX = new Axis();//x轴 Axis axisY = new Axis();//y轴 data.setAxisXBottom(axisX); data.setAxisYLeft(axisY); data.setLines(lines); lineChart.setLineChartData(data);//给图表设置数据 } }); }}
xml
// An highlighted block
转载地址:http://lhmez.baihongyu.com/