HelloCharts(一、LineChart)
来源:互联网 发布:java nio selector 编辑:程序博客网 时间:2024/06/09 17:50
HelloCharts控件里的LineChart方法设置
布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".LineChartsActivity" > <lecho.lib.hellocharts.view.LineChartView android:id="@+id/chart" android:layout_width="match_parent" android:layout_height="match_parent" > </lecho.lib.hellocharts.view.LineChartView></RelativeLayout>代码
import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.graphics.Color;import android.graphics.Typeface;import android.os.Bundle;import android.widget.Toast;import lecho.lib.hellocharts.animation.ChartAnimationListener;import lecho.lib.hellocharts.listener.LineChartOnValueSelectListener;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 LineDemo extends Activity {static int LineChartNums = 10;int numberOfLines = 1;int maxNumberOfLines = 4;boolean isCubic = false;LineChartView lineChart;private LineChartData chartData;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.linedemo);lineChart = (LineChartView) findViewById(R.id.linechart);lineChart.setInteractive(true);//是否可以缩放lineChart.setOnValueTouchListener(new LineChartOnValueSelectListener() {@Overridepublic void onValueDeselected() {}@Overridepublic void onValueSelected(int arg0, int arg1, PointValue arg2) {Toast.makeText(LineDemo.this, arg1+"", 0).show();//addLineToData();resetViewport();}});lineChart.setValueSelectionEnabled(true);//设置节点点击后动画toggleCubic();}/** * 添加数据 */public void AddLineChartDate(){List<Line> lines = new ArrayList<Line>();for (int i = 0; i < numberOfLines; i++) {List<PointValue> pointValues = new ArrayList<PointValue>();//节点数据结合Axis axisY = new Axis();//Y轴属性Axis axisX = new Axis();//X轴属性axisY.setName("Y轴");axisX.setName("X轴");ArrayList<AxisValue> axisValuesY = new ArrayList<AxisValue>();ArrayList<AxisValue> axisValuesX = new ArrayList<AxisValue>();for (int j = 0; j < LineChartNums; j++) {pointValues.add(new PointValue(j, j*10*(i+1)));//添加节点数据axisValuesY.add(new AxisValue(j*10*(i+1)).setLabel(j+""));//添加Y轴显示的刻度值axisValuesX.add(new AxisValue(j).setLabel(j+""));//添加X轴显示的刻度值}axisY.setValues(axisValuesY);axisX.setValues(axisValuesX);axisX.setLineColor(Color.BLACK);//无效果axisY.setLineColor(Color.BLUE);//无效果axisX.setTextColor(Color.BLACK);//设置X轴文字颜色axisY.setTextColor(Color.BLUE);//设置Y轴文字颜色axisX.setTextSize(20);//设置X轴文字大小axisX.setTypeface(Typeface.SERIF);//设置文字样式axisX.setHasTiltedLabels(true);//设置X轴文字向左旋转45度axisX.setHasLines(true);//是否显示X轴网格线axisY.setHasLines(true);axisX.setInside(true);//设置X轴文字在X轴内部Line line = new Line(pointValues);line.setColor(Color.GREEN);//设置折线颜色line.setStrokeWidth(5);//设置折线宽度line.setFilled(true);//设置折线覆盖区域颜色line.setCubic(isCubic);//节点之间的过渡line.setPointColor(Color.RED);//设置节点颜色line.setPointRadius(10);//设置节点半径line.setHasLabels(true);//是否显示节点数据line.setHasLines(true);//是否显示折线line.setHasPoints(true);//是否显示节点line.setShape(ValueShape.CIRCLE);//节点图形样式 DIAMOND菱形、SQUARE方形、CIRCLE圆形line.setHasLabelsOnlyForSelected(false);//隐藏数据,触摸可以显示lines.add(line);//将数据集合添加到线chartData = new LineChartData(lines);chartData.setAxisYLeft(axisY);//将Y轴属性设置到左边chartData.setAxisXBottom(axisX);//将X轴属性设置到底部chartData.setBaseValue(20);//设置反向覆盖区域颜色chartData.setValueLabelBackgroundAuto(false);//设置数据背景是否跟随节点颜色chartData.setValueLabelBackgroundColor(Color.BLUE);//设置数据背景颜色chartData.setValueLabelBackgroundEnabled(false);//设置是否有数据背景chartData.setValueLabelsTextColor(Color.RED);//设置数据文字颜色chartData.setValueLabelTextSize(15);//设置数据文字大小chartData.setValueLabelTypeface(Typeface.MONOSPACE);//设置数据文字样式}lineChart.setLineChartData(chartData);//将数据添加到控件中}private void resetViewport() { // Reset viewport height range to (0,100) final Viewport v = new Viewport(lineChart.getMaximumViewport()); v.bottom = 0; v.top = 100; v.left = 0; v.right = LineChartNums - 1; lineChart.setMaximumViewport(v); lineChart.setCurrentViewport(v); } private void toggleCubic() { isCubic = !isCubic; AddLineChartDate(); if (isCubic) { final Viewport v = new Viewport(lineChart.getMaximumViewport()); v.bottom = -5; v.top = 105; lineChart.setMaximumViewport(v); lineChart.setCurrentViewportWithAnimation(v); } else { // If not cubic restore viewport to (0,100) range. final Viewport v = new Viewport(lineChart.getMaximumViewport()); v.bottom = 0; v.top = 100; lineChart.setViewportAnimationListener(new ChartAnimationListener() { @Override public void onAnimationStarted() { // TODO Auto-generated method stub } @Override public void onAnimationFinished() { lineChart.setMaximumViewport(v); lineChart.setViewportAnimationListener(null); } }); lineChart.setCurrentViewportWithAnimation(v); } }}
jar包点击打开链接
1 0
- HelloCharts(一、LineChart)
- HelloCharts(一、LineChart)
- hellocharts之linechart最详细介绍(写了好久)
- HelloCharts开源图表库(一)之折线图
- HelloCharts
- HelloCharts
- LineChart
- 基于MPAndroidChart的自定义LineChart(一)----节点绘制叉号+分段绘制背景
- hellocharts-android-Android图表开源库的使用(一)
- hellocharts-android-Android图表开源库的使用(一)
- ZedGraph给LineChart添加数值 (转帖)
- LineChart:折线图 详解 (PNChart)
- Linechart + Datagrid 互动展示数据 (Linechart自定义数据点选择线)
- hellocharts-android开源图表库(效果非常好)
- hellocharts-android开源图表库(效果非常好)
- hellocharts-android开源图表库(效果非常好)
- 利用Hellocharts绘制频谱瀑布图(雨图)
- hellocharts-android开源图表库(效果非常好)
- 构造函数
- 我的第一篇博客
- decode()函数简介:
- 摩尔定律终结——后摩尔时代,何去何从?
- Global.asax 文件说明
- HelloCharts(一、LineChart)
- C# 中chart 柱状图用法代码
- JQuery-复选框的操作(摘自<锋利的JQuery>)
- 26. Remove Duplicates from Sorted Array
- ci sql
- HDU 3357 Stock Chase(类拓扑)
- 和子文一起学习编程第一天
- 如果你的企业需要找投资人,…
- 1111