android 画柱状图
来源:互联网 发布:淘宝评价赚钱 编辑:程序博客网 时间:2024/06/03 20:12
package com.example.test;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Paint.Style;import android.graphics.Rect;import android.util.AttributeSet;import android.view.View;public class MyView extends View { private static final String title = "2014-2017的销售情况"; private static final String content = "来自公司销售的统计数据"; private Paint paint; public MyView(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); paint = new Paint(); paint.setColor(Color.BLACK); paint.setTextSize(30); //绘制标题 canvas.drawText(title, 100, 30, paint); //绘制坐标 canvas.drawLine(50, 100, 50, 500, paint);//绘制纵坐标 canvas.drawLine(50, 500, 450, 500, paint);//绘制横坐标 paint.setTextSize(25); //设置字体的大小 int[] array = {0, 50, 100, 150, 200, 250, 300, 350}; canvas.drawText("单位:万元", 20, 70, paint); //绘制纵坐标的刻度'-'和数据 for (int i = 0; i < array.length; i++) { //画纵坐标的刻度横线 "-" canvas.drawLine(50, 500 - array[i], 54, 500 - array[i], paint); //画纵坐标的刻度数据 canvas.drawText(array[i]+"", 10, 500 - array[i], paint); } //绘制纵坐标的数据 数据之间相隔100 String[] array2 = {"2014年","2015年","2016年","2017年"}; int[] year_array = {0,100,200,300}; for (int i = 0; i < array2.length; i++) { canvas.drawText(array2[i], year_array[i] + 70, 520, paint); } paint.setColor(Color.BLUE); paint.setStyle(Style.FILL);//填充画笔 //画4个矩形柱状图 注意横坐标之间相隔100 canvas.drawRect(new Rect(90, 500-56, 110, 500), paint); canvas.drawRect(new Rect(190, 500-100, 210, 500), paint); canvas.drawRect(new Rect(290, 500-200, 310, 500), paint); canvas.drawRect(new Rect(390, 500-300, 410, 500), paint); //为4个矩形图画4个数据 注意横坐标之间相隔100 paint.setColor(Color.RED); canvas.drawText("56.0", 80, 500-58, paint); canvas.drawText("100.0", 180, 500-102, paint); canvas.drawText("200.0", 280, 500-202, paint); canvas.drawText("300.0", 380, 500-302, paint); canvas.drawText(content, 80, 560, paint); }}
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <com.example.test.MyView android:layout_width="fill_parent" android:layout_height="fill_parent" > </com.example.test.MyView></LinearLayout>
结果:
源码下载地址:
http://download.csdn.net/detail/u013209983/9737762
0 0
- Android AChartEngine画柱状图
- android 画柱状图
- [Android]使用AChartEngine画柱状图
- [Android]使用AChartEngine画柱状图
- Android 柱状图
- Android 柱状图
- Android 如何 画 柱状图 -------自定义View
- Android----画柱状图和饼图
- Android中利用Canvas画简单柱状图
- (4.2.15)【android开源工具】Android画柱状图
- 自定义控件-- 柱状图--Android
- android自定义柱状图
- android 绘制柱状图等
- 【Android】柱状图示例
- android Achartengine绘制柱状图
- android滚轮柱状图
- android自定义横向柱状图
- Android 水平柱状图
- Charles破解安装
- 问题二十:C++全局debug “ray tracing图形”实例
- 三羊献瑞
- POJ - 2785 4 Values whose Sum is 0(二分枚举)
- C++类的总结
- android 画柱状图
- 《鬼子来了-姜文》——鬼子与“我”
- [POJ2891]Strange Way to Express Integers(扩展中国剩余定理)
- 第三天-中软!
- 数组内存分配之堆、栈
- Solr字段类型field type的定义
- 怎么看越努力,越幸运?
- Python 图像读入处理(R+G+B+Gray)
- 快速排序函数模块