hightmaps 按地图上显示的统计数据

    离extjs 至 easyui html5hightchars 再到hightmaps。Exjtseasyui很相似,extjs是重量级的,easyui轻量级的。比extjs容易上手。照着demo改就能够开发了。easyui入门demo见:easyui-demo,或者到官网http://www.jeasyui.com/;会了easyui开发,上手html5界面开发也很的快。大多类似的。到html5-demo界面开发 下载demo 然后把demo放到自己的web项目中或者訪问http://www.rgraph.net/docs/line.html。进一步使用hightchar也很容易,下载demo体验一下hightchar很方便地样例,理解hightchar,官网http://www.highcharts.com/或见hightchars-demo

以下介绍hightmap开发中国地图分布量,效果截图。



前台代码

China-map.jsp

引入包。初始化组件

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><script type="text/javascript" src="js/jquery-1.8.2.min.js"></script><script src="js/highmaps.js"></script>
<script src="js/modules/exporting.js"></script>
<script src="js/china-data.js"></script><title>My JSP 'index.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><style type="text/css">#container {height: 700px; min-width: 310px; max-width: 800px; margin: 0 auto; 
}
.loading {margin-top: 10em;text-align: center;color: gray;
}</style><script type="text/javascript">$(function () {var data = [${data}];$('#container').highcharts('Map', {title : {text : 'xxx量统计'},subtitle : {text : '地区分布'},mapNavigation: {enabled: true,buttonOptions: {verticalAlign: 'bottom'}},colorAxis: {min: 0},series : [{data : data,mapData: Highcharts.maps['countries/china'],joinBy: 'hc-key',name: 'xxx分布',states: {hover: {color: '#BADA55'}},dataLabels: {enabled: true,format: '{point.name}'}}]});
});</script></head><body><div id="container"></div></body>
</html>

Action代码

package com.li72.action;import com.li72.dao.MapDao;
import com.opensymphony.xwork2.ActionSupport;/*** @author 一个简单的前后台交换 地图展示**/
public class MapAction extends ActionSupport{private static final long serialVersionUID = -5452039838295753607L;MapDao map= new MapDao();private String data;public String  chinaMap(){data = map.mkData();return SUCCESS;}public String getData() {return data;}public void setData(String data) {this.data = data;}
}

dao层,产生模拟数据。建议把地图做成通用的,仅仅要把数据源改变,就能够产生不同的按地区分布图。

package com.li72.dao;import java.util.HashMap;
import java.util.Map;
import java.util.Random;public class MapDao {/*** @return  依照地图的设定,对这些省市进行设值*/public String  mkData(){StringBuffer sb = new StringBuffer("");Map<String,String> myMap= new HashMap<String,String>(40);myMap.put("吉林省","cn-jl");        myMap.put("天津市","cn-tj");        myMap.put("安徽省","cn-ah");        myMap.put("山东省","cn-sd");        myMap.put("山西省","cn-sx");        myMap.put("新疆维吾尔自治区","cn-xj");myMap.put("河北省","cn-hb");        myMap.put("河南省","cn-he");        myMap.put("湖南省","cn-hn");        myMap.put("甘肃省","cn-gs");        myMap.put("福建省","cn-fj");        myMap.put("贵州省","cn-gz");        myMap.put("重庆市","cn-cq");        myMap.put("江苏省","cn-js");        myMap.put("湖北省","cn-hu");        myMap.put("内蒙古自治区","cn-nm");  myMap.put("广西壮族自治区","cn-gx"); myMap.put("黑龙江省","cn-hl");      myMap.put("云南省","cn-yn");        myMap.put("辽宁省","cn-ln");        myMap.put("香港特别行政区","cn-6668"); myMap.put("浙江省","cn-zj");        myMap.put("上海市","cn-sh");        myMap.put("北京市","cn-bj");        myMap.put("广东省","cn-gd");        myMap.put("澳门特别行政区","cn-3681"); myMap.put("西藏自治区","cn-xz");    myMap.put("陕西省","cn-sa");        myMap.put("四川省","cn-sc");        myMap.put("海南省","cn-ha");        myMap.put("宁夏回族自治区","cn-nx"); myMap.put("青海省","cn-qh");        myMap.put("江西省","cn-jx");        myMap.put("台湾省","tw-tw");        //  {"hc-key": "cn-sh","value": 0},Random random = new Random();String value="";for (Object o : myMap.keySet()) { value= random.nextInt(100)+1+"" ;sb.append("{'hc-key':'").append(myMap.get(o)).append("','value':").append(value).append("},").append("\n");;}return  sb.deleteCharAt(sb.length()-1)+"";}
Struts2配置
<package name="li72" extends="struts-default">
<action name="chinaMap" class="com.li72.action.MapAction" method="chinaMap">
<result name="success">/china-map.jsp</result>
</action>
</package>

 下载地图开发实例,包含地图数据,包含其它的example 


地图开发代码

版权声明:本文博主原创文章,博客,未经同意不得转载。

转载于:https://www.cnblogs.com/bhlsheji/p/4811338.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/397498.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python pytorch 版本,python 如何查看pytorch版本

看代码吧~import torchprint(torch.__version__)补充&#xff1a;pytorch不同版本安装以及版本查看一&#xff1a;基于conda安装conda create --name pytorch_learn python3.6.7#创建一个名为pytorch_learn的环境source activate pytorch_learn #进入环境conda install pytorch…

Unity WebGL 窗口自适应

unity 打包好WebGL后&#xff0c;用文本编辑器编辑打包生成的 index.html 文件 在生成的html里面修改代码<script type"text/javascript">    function Reset() {       var canvas document.getElementById("#canvas");        …

python 会增加内存吗,Python+不断增加的内存分配

我正在写一个模块来训练一个大型数据集上的ML模型——它包括0.6米的数据点&#xff0c;每个数据点的维度都是0.15米。我在加载数据集本身时遇到了问题。(全是numpy数组)下面是一个代码片段(它复制了实际代码的主要行为)&#xff1a;import numpyimport psutilFV_length 150000…

非IT人士的云栖酱油之行 (程序猿迷妹的云栖之行)

摘要&#xff1a; 熟悉我的人都知道&#xff0c;我是一个贪玩儿且不学无术的姑娘&#xff0c;对于互联网我也是知之甚少&#xff1b;这次去到杭州参加阿里巴巴集团主办的为期4天的科技大会也是很例外&#xff1b;但是不得不说这次的会议真是让我很震惊。今天我就和大家分享一下…

MySQL 全文搜索支持, mysql 5.6.4支持Innodb的全文检索和类memcache的nosql支持

背景&#xff1a;搞个个人博客的全文搜索得用like啥的&#xff0c;现在mysql版本号已经大于5.6.4了也就支持了innodb的全文搜索了&#xff0c;刚查了下目前版本号都到MySQL Community Server 5.6.19 了&#xff0c;所以&#xff0c;一些小的应用可以用它做全文搜索了&#xff0…

搭建基于Jenkins的CI服务器

安装Jenkins和创建任务这些操作网上一搜一大把&#xff0c;这里就没必要写了&#xff0c;直接就开始编译、单元测试&#xff0c;覆盖&#xff0c;git提交触发构建&#xff0c;构建失败发送给提交人邮件。 因为项目比较复杂&#xff0c;为了懒省事我直接在CI服务器上安装了visua…

php打补丁,PHPMailer库打补丁后漏洞仍然存在,怎么解?

开源PHPMailer库被披露存有一个严重的远程代码执行漏洞。这个漏洞在被修补后&#xff0c;又进行了二次修复&#xff0c;因为第一次没有充分解决问题。那么&#xff0c;这个漏洞是如何工作的&#xff1f;为什么原始补丁没有解决问题&#xff1f;Michael Cobb&#xff1a;代码库和…

Ubuntu下安装jdk经验分享

Ubuntu下安装jdk经验分享http://www.jb51.net/article/55131.htm转载于:https://www.cnblogs.com/kangtuohongwai/p/6002555.html

BZOJ 1270: [BeijingWc2008]雷涛的小猫( dp )

简单的dp..dp(i,j) max(dp(x,y))cnt[i][j], (x,y)->(i,j)是合法路径.设f(i) max(dp(x,y))(1≤x≤N, 1≤y≤i), g(i,j) max(dp(i, k))(1≤k≤j)那么dp(i,j) max(f(jdelta), g(i,j1))cnt[i][j]. 递推即可. 时间复杂度O(NH)----------------------------------------------…

【校招面试 之 C/C++】第12题 C++ 重载、重写和重定义

1、成员函数重载特征&#xff1a; a.相同的范围&#xff08;在同一个类中&#xff09;&#xff1b; b.函数名字相同&#xff1b; c.参数不同&#xff08;参数个数不同或者参数类型不同&#xff0c;但是返回值不同不能使重载&#xff09;&#xff1b; d.virtual关键字可有可无…

mac php5.6.30与php7共存,认识Homebrew以及在Mac上同时安装PHP5及PHP7

Homebrew几乎是Mac上必备的软件&#xff0c;用于下载安装和管理其他软件。尤其对于程序员&#xff0c;讲真&#xff0c;本人到现在仍然不知道在Mac上如何不借助Homebrew来搭建php-apache-mysql开发环境。认识HomebrewHomebrew是一个开源项目&#xff0c;据说它的作者曾经去谷歌…

POJ 1141

题意&#xff1a;给出一个表达式的子序列&#xff0c;要你填充这个序列&#xff0c;保证最终形成的序列长度最短&#xff0c;也就是添加的括号最少 这个子序列要遵循括号匹配的原则。 分析&#xff1a;转移方程dp[i][j]min(dp[i][k],dp[k1][j]).i<k<j.dp[1][1]1; dp[i][j…

PHP array_count_values() 函数用于统计数组中所有值出现的次数。

定义和用法 array_count_values() 函数用于统计数组中所有值出现的次数。 本函数返回一个数组&#xff0c;其元素的键名是原数组的值&#xff0c;键值是该值在原数组中出现的次数。 语法 array_count_values(array) 参数 描述 array 必需。规定输入的数组。 例子 <?php …

SpringDay01

一&#xff1a;什么是Spring。 简单的理解就是一个可以装web层&#xff0c; service层&#xff0c; dao层&#xff0c;这三层对象的容器。 二&#xff1a;Spring搭建 1.导包&#xff1a;核心四个包和log4j两个包 2.注册对象&#xff1a;User类 3.书写配置注册对象到容器 a>导…

bom_clear.php,thinkphp清除BOM方法

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼在utf-8编码文件中BOM在文件头部&#xff0c;占用三个字节&#xff0c;用来标示该文件属于utf-8编码&#xff0c;现在已经有很多软件识别bom头&#xff0c;但是还有些不能识别bom头&#xff0c;比如PHP就不能识别bom头&#xff0c;…

(算法)Trapping Rain Water I

题目&#xff1a; Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining. For example, Given [0,1,0,2,1,0,1,3,2,1,2,1], return 6. 思路&#xff1a; 题目的意思是说&…

字符数组拷贝与strcpy函数

代码&#xff1a; char str1[10],str2[10];for (int i0;i<10;i){str1[i]a;}strcpy(str2,str1); 让找出错误的地方。 先来看下strcpy函数&#xff1a; 使用格式&#xff1a;char* strcmp&#xff08;char* buffer&#xff0c;char*str&#xff09;功 能: 把从str地址开始且含…

java中的NAN和INFINITY

2019独角兽企业重金招聘Python工程师标准>>> java浮点数运算中有两个特殊的情况&#xff1a;NAN、INFINITY。 1、INFINITY&#xff1a; 在浮点数运算时&#xff0c;有时我们会遇到除数为0的情况&#xff0c;那java是如何解决的呢&#xff1f; 我们知道&#xff0c;在…

php框架tp5工作流程,tp5框架流程

之前没怎么了解过&#xff0c;但用过TP3.2.网上查了下说是区别很大&#xff0c;特此记录下。流程&#xff1a;1.入口文件默认是 public目录下的index.php// 定义应用目录define(APP_PATH, __DIR__ . /../application/);// 加载框架引导文件require __DIR__ . /../thinkphp/star…

有移动规则2

import org.robochina.airobot.tank.*; import org.robochina.math.*; import java.awt.geom.*; import java.util.*;/*** 这个类对应一个机器人&#xff0c;根据需要实现相应的Action处理函数&#xff0c;* 就可以订制自己的机器人。*/ public class Text extends SimpleRobot…