MpAndroidChart 学习篇-线形图学习笔记
来源:互联网 发布:注册码破解软件下载 编辑:程序博客网 时间:2024/05/21 16:59
package com.org.gsc.chartdemo;import android.graphics.Color;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import com.github.mikephil.charting.charts.LineChart;import com.github.mikephil.charting.components.LimitLine;import com.github.mikephil.charting.components.XAxis;import com.github.mikephil.charting.data.Entry;import com.github.mikephil.charting.data.LineData;import com.github.mikephil.charting.data.LineDataSet;import com.github.mikephil.charting.highlight.Highlight;import com.github.mikephil.charting.listener.OnChartValueSelectedListener;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity implements OnChartValueSelectedListener { LineChart lc; private List<Entry> yvals=new ArrayList<>(); private List<Entry>y2=new ArrayList<>(); private LineDataSet mdatas=new LineDataSet(yvals,"1"); private LineDataSet mdatas1=new LineDataSet(y2,"2"); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); System.out.println("-------"+getWindow().toString());// getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,// WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_main); initView(); } /** * 初始化控件 */ private void initView() { lc= (LineChart) findViewById(R.id.lc); initData1(); initData2(); lc.setData(new LineData(mdatas,mdatas1));//数据源多少条线就有多少个数据源 } /** * 设置第二条线 */ private void initData2() { //做动画 lc.animateX(3000); lc.animateY(3000); MyMarkerView mv = new MyMarkerView(this, R.layout.custom_marker_view); mv.setChartView(lc); // For bounds control lc.setMarker(mv); // Set the marker to the chart //设置点击选中的监听 lc.setOnChartValueSelectedListener(this); // lc.getXAxis().setEnabled(false);// x 轴不显示 lc.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);//设置坐标轴显示位置 lc.getXAxis().setDrawGridLines(false);//去掉与Y轴平行的线 lc.getXAxis().setTextColor(Color.GRAY);//设置X 轴字体颜色和大小 lc.getXAxis().setTextSize(20); lc.getAxisLeft().setTextColor(Color.GREEN);//设置Y轴字体颜色和大小 lc.getAxisLeft().setTextSize(30); lc.getXAxis().setSpaceMax(4);//设置X 轴的标签的距离 lc.getAxisLeft().setLabelCount(4,false);//设置Y轴标签个数 lc.getAxisLeft().setDrawGridLines(false);//去掉X轴平行的线 lc.getAxisLeft().setAxisLineColor(Color.GREEN);//设置Y轴颜色 lc.getDescription().setEnabled(false);//去掉描述文字 //设置X 轴限制线 LimitLine x=new LimitLine(3,"2"); x.setTextColor(Color.GREEN); x.setTextSize(20); x.setLineWidth(30); x.setLineColor(Color.BLACK); lc.getXAxis().addLimitLine(x); //设置Y轴的限制线 LimitLine y=new LimitLine(2,"2y"); // lc.getAxisLeft().enableGridDashedLine(10f, 10f, 0f); y.enableDashedLine(10f, 10f, 0f);// 设置分割线为虚线 y.setLineWidth(10); y.setTextSize(40); y.setLineColor(Color.GREEN); y.setTextColor(Color.BLACK); lc.getAxisLeft().addLimitLine(y); //lc.getXAxis().setEnabled(false);//不显示X轴 lc.getAxisRight().setEnabled(false); //右y 轴 不显示 // lc.setDrawGridBackground(false); // lc.getAxisLeft().setEnabled(false);// 左边y轴不显示 // lc.getXAxis().setDrawGridLines(true); lc.getXAxis().setDrawLimitLinesBehindData(true); lc.getXAxis().setAxisLineColor(Color.RED);// lc.getAxisLeft().setGridColor(Color.GRAY); //lc.getAxisRight().setDrawGridLines(false); // lc.getAxisRight().setDrawGridLines(false); for(int i=0;i<20;i++){ y2.add(new Entry(i, (float) (0.3*i))); } mdatas1 = new LineDataSet(y2, "2");//添加坐标点和标签 // ? LineDataSet.Mode.LINEAR // : LineDataSet.Mode.CUBIC_BEZIER mdatas1.setMode(LineDataSet.Mode.STEPPED );//设置线的模式及样式 mdatas1.setValueTextColor(Color.YELLOW); mdatas1.setDrawFilled(true);//设置填充颜色是否显示 mdatas1.setDrawHighlightIndicators(true);//设置高亮指示器不显示默认不显示 // mdatas.setHighlightEnabled(true);//下面两句设置虚线 mdatas1.enableDashedLine(10f, 5f, 0f); mdatas1.enableDashedHighlightLine(10f, 5f, 0f); mdatas1.setValueTextSize(12f); mdatas1.setColor(Color.BLACK);//设置线的颜色 // mdatas.setDrawCircles(false);//设置不花圈点下句加上也无效 mdatas1.setCircleColor(Color.WHITE);//设置点的颜色 mdatas1.setCircleSize(5);//设置点的大小 mdatas1.setFillColor(Color.BLACK);//设置填充区域 } private void initData1() { //做动画 lc.animateX(3000); lc.animateY(3000); MyMarkerView mv = new MyMarkerView(this, R.layout.custom_marker_view); mv.setChartView(lc); // For bounds control lc.setMarker(mv); // Set the marker to the chart //设置点击选中的监听 lc.setOnChartValueSelectedListener(this); // lc.getXAxis().setEnabled(false);// x 轴不显示 lc.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);//设置坐标轴显示位置 lc.getXAxis().setDrawGridLines(false);//去掉与Y轴平行的线 lc.getXAxis().setTextColor(Color.GRAY);//设置X 轴字体颜色和大小 lc.getXAxis().setTextSize(20); lc.getAxisLeft().setTextColor(Color.GREEN);//设置Y轴字体颜色和大小 lc.getAxisLeft().setTextSize(30); lc.getXAxis().setSpaceMax(4);//设置X 轴的标签的距离 lc.getAxisLeft().setLabelCount(4,false);//设置Y轴标签个数 lc.getAxisLeft().setDrawGridLines(false);//去掉X轴平行的线 lc.getAxisLeft().setAxisLineColor(Color.GREEN);//设置Y轴颜色 lc.getDescription().setEnabled(false);//去掉描述文字 //设置X 轴限制线 LimitLine x=new LimitLine(2,"aaa"); x.setTextColor(Color.GREEN); x.setTextSize(20); x.setLineWidth(30); x.setLineColor(Color.BLACK); lc.getXAxis().addLimitLine(x); //设置Y轴的限制线 LimitLine y=new LimitLine(1,"YYY"); // lc.getAxisLeft().enableGridDashedLine(10f, 10f, 0f); y.enableDashedLine(10f, 10f, 0f);// 设置分割线为虚线 y.setLineWidth(10); y.setTextSize(40); y.setLineColor(Color.GREEN); y.setTextColor(Color.BLACK); lc.getAxisLeft().addLimitLine(y); //lc.getXAxis().setEnabled(false);//不显示X轴 lc.getAxisRight().setEnabled(false); //右y 轴 不显示 // lc.setDrawGridBackground(false); // lc.getAxisLeft().setEnabled(false);// 左边y轴不显示 // lc.getXAxis().setDrawGridLines(true); lc.getXAxis().setDrawLimitLinesBehindData(true); lc.getXAxis().setAxisLineColor(Color.RED);// lc.getAxisLeft().setGridColor(Color.GRAY); //lc.getAxisRight().setDrawGridLines(false); // lc.getAxisRight().setDrawGridLines(false); for(int i=0;i<20;i++){ yvals.add(new Entry(i, (float) (0.1*i))); } mdatas = new LineDataSet(yvals, "1");//添加坐标点和标签 mdatas.setValueTextColor(Color.RED); mdatas.setDrawFilled(true);//设置填充颜色是否显示 mdatas.setDrawHighlightIndicators(true);//设置高亮指示器不显示默认不显示 // mdatas.setHighlightEnabled(true);//下面两句设置虚线 mdatas.enableDashedLine(10f, 5f, 0f); mdatas.enableDashedHighlightLine(10f, 5f, 0f); mdatas.setValueTextSize(12f); mdatas.setColor(Color.YELLOW);//设置线的颜色 // mdatas.setDrawCircles(false);//设置不花圈点下句加上也无效 mdatas.setCircleColor(Color.GREEN);//设置点的颜色 mdatas.setCircleSize(5);//设置点的大小 mdatas.setFillColor(Color.YELLOW);//设置填充区域// mdatas.setAxisDependency(YAxis.AxisDependency.RIGHT); } /** * @param e The selected Entry * @param h The corresponding highlight object that contains information * 点选中的回调 */ @Override public void onValueSelected(Entry e, Highlight h) { } /** * 点没有选中的回调 */ @Override public void onNothingSelected() { }}
阅读全文
0 0
- MpAndroidChart 学习篇-线形图学习笔记
- MPAndroidChart学习笔记----LineChart
- MPAndroidChart之雷达图学习笔记
- Android图表库MPAndroidChart(一)线形图
- MpAndroidChart 学习篇-柱状图和饼状图学习笔记
- MPAndroidChart学习
- MPAndroidChart学习
- 机器学习笔记 - 线性模型与线形回归
- 学习-安卓开源项目-MPAndroidChart
- 关于MPAndroidChart 条形图与线形图的X轴显示文字。
- Android图表库MPAndroidChart(二)——线形图的方方面面,看完你会回来感谢我的
- Android图表库MPAndroidChart(二)——线形图的方方面面,看完你会回来感谢我的
- Android图表库MPAndroidChart(二)——线形图的方方面面,看完你会回来感谢我的
- android图表框架 MPAndroidChart 学习记录
- 绘制LineChart线形图
- echart线形图相关
- 学习日记--第三方开源mpandroidchart统计图片测试
- AJAX + JS 实时线形图
- Spring声明式事务——全注解方式(@Transactional)
- C/C++之回调函数
- Java三大器(过滤器,拦截器,监听器)之监听器
- 厨房无线小票打印机如何授权三大外卖平台
- audio的音乐播放器的播放和暂停
- MpAndroidChart 学习篇-线形图学习笔记
- Node.js之操作文件系统(一)
- AndroidStudio 创建桌面快捷方式
- Spring Boot入门教程-数据分页
- iOS 探讨之 代理模式
- 【转】删除过期数据通用程序
- Spring整合JMS P2P方式
- 软件测试就业前景分析
- 单点登录原理与简单实现