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 ---
相关文章
|
3月前
|
安全 API Android开发
Android网络和数据交互: 解释Retrofit库的作用。
Android网络和数据交互: 解释Retrofit库的作用。
39 0
|
4月前
|
XML 物联网 API
Android Ble蓝牙App(五)数据操作
Android Ble蓝牙App(五)数据操作
|
4月前
|
数据库 Android开发 开发者
Android Studio入门之内容共享ContentProvider讲解以及实现共享数据实战(附源码 超详细必看)
Android Studio入门之内容共享ContentProvider讲解以及实现共享数据实战(附源码 超详细必看)
41 0
|
10天前
|
Android开发 开发者
Android网络和数据交互: 请解释Android中的AsyncTask的作用。
Android&#39;s AsyncTask simplifies asynchronous tasks for brief background work, bridging UI and worker threads. It involves execute() for starting tasks, doInBackground() for background execution, publishProgress() for progress updates, and onPostExecute() for returning results to the main thread.
10 0
|
10天前
|
网络协议 安全 API
Android网络和数据交互: 什么是HTTP和HTTPS?在Android中如何进行网络请求?
HTTP和HTTPS是网络数据传输协议,HTTP基于TCP/IP,简单快速,HTTPS则是加密的HTTP,确保数据安全。在Android中,过去常用HttpURLConnection和HttpClient,但HttpClient自Android 6.0起被移除。现在推荐使用支持TLS、流式上传下载、超时配置等特性的HttpsURLConnection进行网络请求。
10 0
|
23天前
|
XML Java Android开发
Android每点击一次按钮就添加一条数据
Android每点击一次按钮就添加一条数据
23 1
|
1月前
|
存储 Android开发 C++
【Android 从入门到出门】第五章:使用DataStore存储数据和测试
【Android 从入门到出门】第五章:使用DataStore存储数据和测试
34 3
|
6月前
|
存储 安全 Java
Android DataStore:安全存储和轻松管理数据
Android DataStore:安全存储和轻松管理数据
|
2月前
|
JavaScript Java 数据安全/隐私保护
安卓逆向 -- POST数据解密
安卓逆向 -- POST数据解密
27 2