【Android-数据报表】初级篇[让Highcharts报表显示在Android屏幕]

 Highcharts 报表是至今我发现做得最好的报表之一。当然,可能还有更好的我没发现。

此次我们就说说怎么让Highcharts显示在Android设备上。

首先可以在官网查看文档[官方文档]此次我们以HighchartsTable为例,因为HighchartsTable相对来说使用较为简单,只需要引用几个js,和写一些html代码即可。

首先我们可以看到文档下面有说明:

1,首先需要下载并引用必须的js文件,引用方法。

	<script src="jQuery.js"></script>
	<script src="highcharts.js"></script>
	<script src="jquery.highchartTable.js"></script>

2,创建图表渲染容器(div)。

<div class="highchart-container2"></div>

3,创建HTML表格代码。

在<table>,你必须设置一些属性,如图表类型和图表渲染容器等
其中数据列(Series)的名字在<thead>中定义,值在<tbody>中定义
<tr>的第一个<td>代表X轴(xAxis)的值,其他<td>代表每个系列的Y值(Value),示例代码如下:

<table class="highchart" data-graph-container=".highchart-container2"
		data-graph-type="line">
		<caption>Column example</caption>
		<thead>
			<tr>
				<th width="100px">Month</th>
				<th width="100px">Sales</th>
				<th widht="100px">Benefits</th>
			</tr>
		</thead>
		<tbody>
			<tr>
				<td>January</td>
				<td>8000</td>
				<td>2000</td>
			</tr>
			<tr>
				<td>February</td>
				<td>12000</td>
				<td>3000</td>
			</tr>
			<tr>
				<td>March</td>
				<td>18000</td>
				<td>4000</td>
			</tr>
			<tr>
				<td>April</td>
				<td>2000</td>
				<td>-1000</td>
			</tr>
			<tr>
				<td>May</td>
				<td>500</td>
				<td>-2500</td>
			</tr>
		</tbody>
	</table>

4,调用图表转换函数。

最后,在Table上调用highchartTable()函数即可,代码如下

$(document).ready(function() {
			$('table.highchart').highchartTable();
		});

这里代码中需要注意的是:

1,data-graph-container=".highchart-container2"的值是直接饮用的上面所定义class的名称:<div class="highchart-container2"></div>所以这两个名字必须一致。

2,下面调用函数时$('table.highchart').highchartTable();中的('table.highchart')直接调用的上面table的class名称。

所以记得一一对应,否则不能出效果。

如果上述步骤都没问题就应该可以看到如下效果图:

关于其它一些属性可以去官网查看。

下面给出js下载地址:

js下载地址:http://download.csdn.net/detail/gulaer/7251053

项目下载地址:http://download.csdn.net/detail/gulaer/7251147

以上是js使用html方式显示。

下面说说在怎么在Android中显示,其实很简单,就是WebView显示本地html文件而已。

使用挺简单,直接给出代码。

但是前提需要把上面的项目下载地址中的所有文件(三个js文件和一个html文件)拷贝至Android项目中的assets目录下。

然后写Webview调用关键代码:

mWebView.getSettings().setSupportZoom(true);
		mWebView.getSettings().setLoadWithOverviewMode(true);
		mWebView.getSettings().setUseWideViewPort(true);
		mWebView.getSettings().setJavaScriptEnabled(true);
		mWebView.getSettings().setDefaultTextEncodingName("UTF-8");
		mWebView.getSettings().setSupportMultipleWindows(true);
		mWebView.getSettings().setLoadsImagesAutomatically(true);

		mWebView.setWebViewClient(new WebViewClient() {
			@Override
			public void onPageFinished(WebView view, String url) {
				super.onPageFinished(view, url);
			}

			@Override
			public boolean shouldOverrideUrlLoading(WebView view, String url) {
				view.loadUrl(url);
				return true;
			}
		});

		mWebView.setWebChromeClient(new WebChromeClient() {
			@Override
			public void onProgressChanged(WebView view, int newProgress) {
				mProgressBar.setProgress(newProgress);
				mProgressBar.postInvalidate();
				if (newProgress == 100) {
					mProgressBar.setVisibility(View.GONE);
				}
			}
		});

	@Override
	public void onStart() {
		super.onStart();
		loadUrl(mWebUrl);
	}

	private void loadUrl(String url) {
		if (mWebView != null) {
			mWebView.loadUrl(url);
		}
	}

然后运行效果图:

Android项目地址:http://download.csdn.net/detail/gulaer/7251195

项目中包含其它两种报表,包括3D报表。

时间: 2024-12-30 21:49:19

【Android-数据报表】初级篇[让Highcharts报表显示在Android屏幕]的相关文章

android编程怎么在锁屏界面上显示文字

问题描述 android编程怎么在锁屏界面上显示文字 android编程中怎么在锁屏界面上显示文字,请大家帮我一下.

【SSRS】入门篇(四) -- 向报表添加数据

原文:[SSRS]入门篇(四) -- 向报表添加数据 定义好数据集后 [SSRS]入门篇(三) -- 为报表定义数据集 ,就可以开始设计报表了,将要显示在报表的字段.文本框.图像和其他项从工具箱拖放到报表设计图画上,如下图:   1.打开在[SSRS]入门篇(一) -- 创建SSRS项目 建立的报表Sales Orders.rdl: 2.从工具箱把"表"拖放到"设计图画": 注:如果左边没有显示工具箱的话,可以通过"菜单 -> 视图 -> 工具

报表图形显示-小菜鸟又来了,Highcharts如何显示后台json数据

问题描述 小菜鸟又来了,Highcharts如何显示后台json数据 $(function(){ $.ajax({ type:'post', dataType:'json', url:'crmarrvalAction!findCity.action',//请求数据的地址 success:function(json){ 这里..... } }); var chart = new Highcharts.Chart({ chart:{ renderTo:'container', type:'colum

【SSRS】入门篇(三) -- 为报表定义数据集

原文:[SSRS]入门篇(三) -- 为报表定义数据集 通过前两篇文件 [SSRS]入门篇(一) -- 创建SSRS项目 和 [SSRS]入门篇(二) -- 建立数据源 后, 我们建立了一个SSRS项目,并取得数据源,那么接下来做的就是知道报表要显示什么数据了,这一步可以通过建立数据集来实现.  1.解决方案资源管理器 ->右键选择共享数据集 ->添加新数据集: 2.在共享数据集属性窗口输入数据集名称:AdventureWorksDataset:数据源选择之前建立的:AdventureWork

【SSRS】入门篇(五) -- 设置报表格式

原文:[SSRS]入门篇(五) -- 设置报表格式 在上一节 [SSRS]入门篇(四) -- 向报表添加数据 我们设置好了报表,并可以预览到数据,如下图: 当报表完成后,有个重要的工作就是美化报表格式,这一节将讲解: 设置日期格式 设置货币格式 更改文本样式和列宽 设置日期格式:默认情况下,Data字段显示日期和时间信息:这边我们格式设置为中文日期. 1.单击"设计"选项页: 2.右键单击字段[Date],在弹出的菜单单击"文本框属性": 3.单击"数字&

列表-水昌报表能做这样的报表吗?用于对比数据

问题描述 水昌报表能做这样的报表吗?用于对比数据 列表-水昌报表能做这样的报表吗?用于对比数据-财务数据同期对比报表"> 左边是一个报表的内容 右边是另一个报表的内容 相个内容无任何关系. 比如左边是欠款列表,可能欠了6次 右边是还款列表可能还了3次 也有可能欠了3次还了6次,最要命的是一详细资料行,如何一行显示,两个不同的数据? 解决方案 可以分栏,然后左右各显示一个表

[Android] 底部菜单布局+PopupWindows实现弹出菜单功能(初级篇)

    这篇文章主要是自己研究如何对底部菜单进行布局,并简单的实现点击不同"按钮"实现图片切换和背景切换的功能,最后通过PopupWindows实现弹出菜单,点击不同按钮能实现不同方法,相当于美图秀秀编辑图片的功能吧!它并没有涉及到Fragment碎片切换页面的功能,因为页面始终显示被处理的图片.这是我初学Android的一篇基础性文章和在线思想笔记,网上有很多更优秀的demo,不过也希望对大家有用~     首先介绍两种方法实现底部菜单点击不同图标显示选中状态的效果.    (可参考

【数据蒋堂】功夫都在报表外--漫谈报表性能优化

应用系统中的报表,作为面向业务用户的窗口,其性能一直被高度关注.用户输入参数后都希望立即就能看到统计查询结果,等个十几二十秒还能接受,等到三五分钟的用户体验就非常恶劣了. 那么,报表为什么会慢,又应当从哪里入手进行性能调优呢? 数据准备 当前应用中的报表大都用报表工具开发,当报表响应太慢时,不明就里的用户就会把矛头指向使用报表工具的开发人员或者报表工具厂商.其实,大多数情况报表的慢只是个表现,背后的原因是数据准备太慢,在数据进入报表环节之前就已经慢了,这时再去优化报表开发或压迫报表工具并没有用处

C/S,客户端是C/ S结构,服务端数据层是WebSerice,加长报表如何开发,用何种工具

问题描述 客户端是C/S结构,服务端数据层是WebSerice,不知道这个我描述的是否足够清楚.现要开发报表,不知用何种报表工具,因为数据层是Webserice的,不像其它本地数据库可以拖曳来完成报表设计(可能是我没设计过).另外:还有一些工程报表是加长的,我记得2003的水晶报表是不可以加长的,只有规定的几种纸张格式.现用的是VS2008Sql2005不知哪位兄弟有好的建议没?请帮下忙,在此谢过. 解决方案 解决方案二:可以借助第三方控件解决方案三:引用1楼simen_frankly的回复: