效果图
代码:
package com.jiahao.me;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import com.github.mikephil.charting.charts.LineChart;
import com.github.mikephil.charting.components.Legend;
import com.github.mikephil.charting.components.XAxis;
import com.github.mikephil.charting.components.YAxis;
import com.github.mikephil.charting.components.YAxis.YAxisLabelPosition;
import com.github.mikephil.charting.data.ChartData;
import com.github.mikephil.charting.data.DataSet;
import com.github.mikephil.charting.data.Entry;
import com.github.mikephil.charting.data.LineData;
import com.github.mikephil.charting.data.LineDataSet;
public class MainActivity extends Activity {
private LineChart chat;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
chat = (LineChart) findViewById(R.id.chat);
chat.setLogEnabled(true);
chat.setBackgroundColor(Color.WHITE);
chat.setDrawGridBackground(false);
// 设置描述
chat.setDescription("");
// 启用 拖动 平移
chat.setDragEnabled(true);
chat.setDragDecelerationEnabled(true);
chat.setDrawBorders(false);
// 启用或禁用绘制图表的边框
chat.setDrawBorders(false);
// chat.setFitsSystemWindows(true);
// 设置动画
chat.animateX(3000);
// 设置滚动
chat.setScrollContainer(true);
// chat.setTouchEnabled(true);
chat.setTouchEnabled(true);
// 设置这里进行缩放控制滚动
// chat.zoom(1.2f, 0f, 15f, 0f);
chat.setPinchZoom(false);
// chat.setVisibleXRangeMaximum(5);
// chat.setVerticalScrollbarPosition(0);
// chat.setHighlightPerDragEnabled(true);
settingChat();
}
private void settingChat() {
// 设置X轴
XAxis xAxis = chat.getXAxis();
// 设置X轴的位置
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
// 设置X轴启用或者禁用
xAxis.setEnabled(true);
// 上面第一行代码设置了false,所以下面第一行即使设置为true也不会绘制AxisLine
xAxis.setDrawAxisLine(false);
xAxis.setDrawGridLines(false);
xAxis.setDrawLabels(true);
// 设置X轴文字的颜色
xAxis.setTextColor(Color.BLUE);
xAxis.setDrawGridLines(true);
xAxis.setLabelsToSkip(0);
// xAxis.setAxisLineWidth(10f);
// xAxis.setEnabled(true);
// xAxis.setDrawGridLines(false);
// 设置轴行的间距
// xAxis.setAxisLineWidth(10);
// 设置右边的Y轴
YAxis yAxis = chat.getAxisRight();
// 设置右边的label不可用
yAxis.setDrawLabels(false);
// 设置右边的线不可用
yAxis.setDrawGridLines(false);
// 设置右边的线不可用
yAxis.setDrawAxisLine(false);
YAxis leftAxis = chat.getAxisLeft();
leftAxis.setDrawAxisLine(false);
leftAxis.setStartAtZero(false);
// 这里进行设置
// xAxis.setEnabled(false);
// leftAxis.setEnabled(true);
// leftAxis.setDrawLabels(true);
// leftAxis.setDrawAxisLine(true);
xAxis.setEnabled(true);
// xAxis.setDrawAxisLine(false);
xAxis.setDrawGridLines(false);
// xAxis.setAxisLineWidth(150);
// 设置数据
List yVals = new ArrayList();
List xVals = new ArrayList();
xVals.add("01-01");
yVals.add(new Entry(35.5f, 0));
xVals.add("01-02");
yVals.add(new Entry(36.0f, 1));
xVals.add("01-03");
yVals.add(new Entry(36.5f, 2));
xVals.add("01-04");
yVals.add(new Entry(37.0f, 3));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 4));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 5));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 6));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 7));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 8));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 9));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 10));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 11));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 12));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 13));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 14));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 15));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 16));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 17));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 18));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 19));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 20));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 21));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 22));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 23));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 24));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 25));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 26));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 27));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 28));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 29));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 30));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 31));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 32));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 33));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 34));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 35));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 36));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 37));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 38));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 39));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 40));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 41));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 42));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 43));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 44));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 45));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 46));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 47));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 48));
xVals.add("01-07");
yVals.add(new Entry(36.5f, 49));
xVals.add("01-07");
yVals.add(new Entry(37.5f, 50));
xVals.add("01-07");
yVals.add(new Entry(38.5f, 51));
xVals.add("01-07");
yVals.add(new Entry(35.5f, 52));
xVals.add("01-05");
yVals.add(new Entry(37.5f, 53));
xVals.add("01-06");
yVals.add(new Entry(38.0f, 54));
// 加上后可以解决 label显示一半的问题
// xVals.add("");
float scale = (float)(xVals.size() / 6.0);
chat.zoom(scale, 0, 0, 0);
// 是否绘制 Legend 下面的方块
Legend legend = chat.getLegend();
legend.setEnabled(false);
LineDataSet set1 = new LineDataSet(yVals, "Content");
// set1.setDrawValues(true);
// set1.setDrawFilled(true);
LineData lineData = new LineData(xVals, set1);
// lineData.setDrawValues(true);
chat.setData(lineData);
}
}
随机推荐
Hibernate3 和Hibernate4 在配置文件上的区别
在使用hibernate之前要首先对hibernate进行一些基础的配置信息,像映射文件XXX.hbm.xml XXX代表当前的domain的模型类名 <?xml version=" ...
VS非web项目使用Transformation配置文件
Web项目中的Transformation使用起来非常方便,特别是本地与服务器情况不一致时调试下以及webdeploy的配合使用. 步骤: 1. 在项目中新建App.Debug.Config及App. ...
数据库操作事务IsolationLevel 枚举
成员名称 说明 Chaos 无法覆盖隔离级别更高的事务中的挂起的更改. ReadCommitted 在正在读取数据时保持共享锁,以避免脏读,但是在事务结束之前可以更改数据,从而导致不可重复 ...
centos 用dvd创建yum 仓库
环境:CentOS 6.0 默认的yum是以网络来安装的,在没有网络或者网速不佳的情况下,通过yum来安装软件是意见非常痛苦的事情.其实对于CentOS DVD来说,里面提供的软件就足以满足我们的需要 ...
android SDK Manager 上载失败
android SDK Manager 下载失败如题,利用android SDK Manager 无法下载各个版本的SDK,是最近无法连接上谷歌的服务器吗?我用了网上说的在C:\WINDOWS\sys ...
Linux下配置PHP开发环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
(php)生成指定个数的随机红包
毕业bg(dfs)
毕业bg Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submissi ...
Vijos 1012 清帝之惑之雍正 平面最近点对(分治)
背景 雍正帝胤祯,生于康熙十七年(1678)是康熙的第四子.康熙61年,45岁的胤祯继承帝位,在位13年,死于圆明园.庙号世宗. 胤祯是在康乾盛世前期--康熙末年社会出现停滞的形式下登上历史舞台的.复 ...
TitleLayout——一个Android轻松实现标题栏的库
TitleLayout 多功能.通用的.可在布局或者使用Java代码实现标题栏: 支持沉浸式状态栏: 支持左侧返回按钮不需要手动实现页面返回: 支持左侧按钮,中间标题,右边按钮点击 左侧支持图片+文字 ...