android 数据报表

简介: 引用:http://www.oschina.net/code/snippet_12_1257 [图片] android_xy.gif [文件] xy_plot_4_Android_src.

引用:http://www.oschina.net/code/snippet_12_1257

[图片] android_xy.gif

img_bad9b1020e8182411b643c2f08b680f3.gif

[文件] xy_plot_4_Android_src.zip ~ 57KB    下载(127)

[代码] 绘制网格线的方法

01 public static void  draw_the_grid(Canvas this_g,  Vector these_labels)
02      {        
03         double rounded_max = 0.0;
04         double rounded_min = 0.0;
05         double rounded_max_temp;
06         Object curElt; 
07         String[] cur_elt_array;
08         int left_margin_d, right_margin_d;     
09  
10         if( draw_only_this_idx == -1)     
11            curElt = these_labels.elementAt(0);  // default  it to 1st one if non set
12         else
13            curElt = these_labels.elementAt(draw_only_this_idx);  // now just the 1st elt
14             
15         cur_elt_array = (String[])curElt;
16  
17         rounded_max = get_ceiling_or_floor (Double.parseDouble(cur_elt_array[2]) , true);
18         rounded_min = get_ceiling_or_floor (Double.parseDouble(cur_elt_array[3]) ,false);
19  
20        // ok so now we have the max value of the set just get a cool ceiling and we go on
21         final Paint paint = new Paint(); 
22         paint.setTextSize(15);
23          
24        left_margin_d =  getCurTextLengthInPixels(paint, Double.toString(rounded_max));
25        //keep the position for later drawing -- leave space for the legend
26        int p_height = 170;
27        int p_width = 220;
28        int[] tmp_draw_sizes = {2 + left_margin_d, 25,p_width - 2 -
29         left_margin_d ,p_height - 25 -5};
30        drawSizes = tmp_draw_sizes; //keep it for later processing
31          
32         //with the mzrgins worked out draw the plotting grid
33        paint.setStyle(Paint.Style.FILL);
34        paint.setColor(Color.WHITE ); 
35         
36        // Android does by coords
37        this_g.drawRect(drawSizes[0], drawSizes[1],drawSizes[0]+
38         drawSizes[2], drawSizes[1]+ drawSizes[3] , paint);
39         
40        paint.setColor(Color.GRAY );      
41         
42         // finally draw the grid     
43         
44        paint.setStyle(Paint.Style.STROKE);
45        this_g.drawRect(drawSizes[0], drawSizes[1],drawSizes[0]+
46         drawSizes[2], drawSizes[1]+ drawSizes[3] , paint);
47  
48            for(int i=1; i < 5 ; i++)
49            {
50                this_g.drawLine(drawSizes[0], drawSizes[1] +
51         (i * drawSizes[3] / 5), drawSizes[0] + drawSizes[2],
52         drawSizes[1] + (i * drawSizes[3] / 5), paint);
53                this_g.drawLine(drawSizes[0]+ (i * drawSizes[2] / 5),
54         drawSizes[1], drawSizes[0] + (i * drawSizes[2] / 5),
55         drawSizes[1] + drawSizes[3], paint);
56            }
57  
58           // good for one value
59            print_axis_values_4_grid(this_g, cur_elt_array[1] ,
60         Double.toString(rounded_max) , Double.toString(rounded_min),
61         cur_elt_array[0] , 2 ,0 );
62           
63      }  // --- end of draw_grid ---
相关文章
|
6月前
|
消息中间件 网络协议 Java
Android 开发中实现数据传递:广播和Handler
Android 开发中实现数据传递:广播和Handler
68 1
|
3月前
|
开发工具 Android开发 开发者
Android平台如何不推RTMP|不发布RTSP流|不实时录像|不回传GB28181数据时实时快照?
本文介绍了一种在Android平台上实现实时截图快照的方法,尤其适用于无需依赖系统接口的情况,如在RTMP推送、RTSP服务或GB28181设备接入等场景下进行截图。通过底层模块(libSmartPublisher.so)实现了截图功能,封装了`SnapShotImpl.java`类来管理截图流程。此外,提供了关键代码片段展示初始化SDK实例、执行截图、以及在Activity销毁时释放资源的过程。此方案还考虑到了快照数据的灵活处理需求,符合GB/T28181-2022的技术规范。对于寻求更灵活快照机制的开发者来说,这是一个值得参考的设计思路。
|
5月前
|
XML 存储 JSON
51. 【Android教程】JSON 数据解析
51. 【Android教程】JSON 数据解析
152 2
|
6月前
|
数据库 Android开发
Android 通过升级SettingsProvider数据强制覆盖用户的设置项
Android 通过升级SettingsProvider数据强制覆盖用户的设置项 【5月更文挑战第7天】
159 5
|
6月前
|
JSON Android开发 数据格式
android与Web服务器交互时的cookie使用-兼谈大众点评数据获得(原创)
android与Web服务器交互时的cookie使用-兼谈大众点评数据获得(原创)
85 2
|
1月前
|
存储 大数据 数据库
Android经典面试题之Intent传递数据大小为什么限制是1M?
在 Android 中,使用 Intent 传递数据时存在约 1MB 的大小限制,这是由于 Binder 机制的事务缓冲区限制、Intent 的设计初衷以及内存消耗和性能问题所致。推荐使用文件存储、SharedPreferences、数据库存储或 ContentProvider 等方式传递大数据。
68 0
|
6月前
|
Java Linux API
统计android设备的网络数据使用量
统计android设备的网络数据使用量
127 0
|
3月前
|
JSON Java Android开发
Android 开发者必备秘籍:轻松攻克 JSON 格式数据解析难题,让你的应用更出色!
【8月更文挑战第18天】在Android开发中,解析JSON数据至关重要。JSON以其简洁和易读成为首选的数据交换格式。开发者可通过多种途径解析JSON,如使用内置的`JSONObject`和`JSONArray`类直接操作数据,或借助Google提供的Gson库将JSON自动映射为Java对象。无论哪种方法,正确解析JSON都是实现高效应用的关键,能帮助开发者处理网络请求返回的数据,并将其展示给用户,从而提升应用的功能性和用户体验。
91 1
|
3月前
|
缓存 API Android开发
Android经典实战之Kotlin Flow中的3个数据相关的操作符:debounce、buffer和conflate
本文介绍了Kotlin中`Flow`的`debounce`、`buffer`及`conflate`三个操作符。`debounce`过滤快速连续数据,仅保留指定时间内的最后一个;`buffer`引入缓存减轻背压;`conflate`仅保留最新数据。通过示例展示了如何在搜索输入和数据流处理中应用这些操作符以提高程序效率和用户体验。
51 6
|
3月前
|
编解码 网络协议 前端开发
如何实现Android平台GB28181设备接入模块按需打开摄像头并回传数据
后台采集摄像头,如果想再进一步扩展,可以把android平台gb28181的camera2 demo,都移植过来,实现功能更强大的国标设备侧,这里主要是展示,收到国标平台侧的回传请求后,才打开摄像头,才开始编码打包,最大限度的减少资源的占用