php和jquery实现地图区域数据统计展示数据示例

 我们要在地图上有限的区块内展示更多的信息,更好的办法是通过地图交互来实现。本文将给大家讲解通过鼠标滑动到地图指定省份区域,在弹出的提示框中显示对应省份的数据信息。适用于数据统计和地图区块展示等场景

 

 
HTML
 
首先在head部分载入raphael.js库文件和chinamapPath.js路径信息文件,本文不重复写下,唯一不同的地方是需要在body中加一个div#tip,用来展示地图信息的提示框。
 代码如下:
<div id="map"></div> 
<div id="tip"></div> 
 
 
jQuery
 
通过调用raphael绘制出中国地图,然后载入统计数据,由于地图区块小,我们不在地图载入的时候就将数据显示在地图区块上了,我们通过鼠标交互实现将数据信息更好的展示给用户。当鼠标滑向省份区块时,通过e.pageX和e.pageY定位鼠标坐标,然后通过jquery的css()方法定位提示框div#tip,并且将对应省份的的名称和活跃用户数加到提示框里并展现出来,请看代码:
 代码如下:
$(function(){ 
    $.get("json.php",function(json){ 
 
    ......//这里省略代码若干 
 
    var i=0; 
    for (var state in china) { 
        china[state]['path'].color = Raphael.getColor(0.9); 
        (function (st, state) { 
            var prodata = data[i]; 
            var fillcolor = colors[arr[i]]; 
            st.attr({fill:fillcolor});//填充背景色 
            xOffset = 70; 
            yOffset = 180; 
            st.hover(function(e){//鼠标滑向 
                st.animate({fill: "#fdd", stroke: "#eee"}, 500); 
                R.safari();                 
                $("#tip").css({"top":(e.pageY-xOffset)+"px","left":(e.pageX-yOffset)+"px"}).fadeIn("fast") 
                .html("<h4>"+china[state]['name']+"</h4><p>活跃用户数:"+prodata+"</p>"); 
            },function(){//鼠标离开 
                st.animate({fill: fillcolor, stroke: "#eee"}, 500); 
                R.safari(); 
                $("#tip").hide(); 
            }); 
 
            st.mousemove(function(e){//鼠标移动 
                $("#tip").css({"top":(e.pageY-xOffset)+"px","left":(e.pageX-yOffset)+"px"}); 
                R.safari(); 
            }); 
 
         })(china[state]['path'], state); 
         i++; 
    } 
    }); 
}); 
 
 
以上代码可以看出,通过jQuery的hover()鼠标滑向省份区块时,调用弹出提示框,并将数据载入显示在提示框中,而值得关注的是,我们还需要加一个效果,就是鼠标在省份区块上移动mousemove()的时候,也应该调用提示框跟随鼠标一起移动,否则的话当鼠标在一个省份区块内滑动的话提示框位置不会变化,这样会影响体验效果,小小的改动可以提升用户体验。
最后,如果您需要定制提示框的效果的话,可以设置提示框的CSS样式,本例简单的CSS代码如下:
 
 代码如下:
#tip{position:absolute; width:180px; border:1px solid #d3d3d3; background:#fff;display:none; 
-moz-border-radius:5px; -webkit-border-radius:5px; overflow:hidden; border-radius:5px; 
-moz-box-shadow:1px 1px 2px rgba(0,0,0,.2); -webkit-box-shadow:1px 1px 2px rgba(0,0,0,.2);  
box-shadow:1px 1px 2px rgba(0,0,0,.2);} 
#tip h4{height:28px; line-height:28px; padding-left:6px; background:#f0f0f0} 
#tip p{line-height:24px; padding:2px 4px} 
 

时间: 2024-09-17 03:42:55

php和jquery实现地图区域数据统计展示数据示例的相关文章

Excel2013如何使用数据条展示数据?

  上一篇文章中我们讲到了在Excel2013中使用数据条展示数据的技巧,可惜的是,数据条主要是应用于一条数据的展示的,如果大家有多组数据需要展示,那么,试试迷你图吧.今天,我们就来学习怎么在Excel2013中使用迷你图. 具体做法如下: 1.用Excel2013打开含有几组数据的工作表,如下图所示,我们现在在E列做出B.C.D列中三组数据的迷你图.选中B3至D3单元格,切换到"插入"选项卡,大家在"迷你图"组中选择一个自己需要的迷你图样式,我们这里以"

PHP+Mysql+jQuery中国地图区域数据统计实例讲解_php实例

今天我要给大家介绍在实际应用中,如何把数据载入到地图中.本文结合实例,使用PHP+Mysql+jQuery实现中国地图各省份数据统计效果. 本例以统计某产品在各省份的活跃用户数为背景,数据来源于mysql数据库,根据各省份的活跃用户数,分成不同等级,并以不同的背景色显示各省份的活跃程度,符合实际应用需求. HTML 首先在head部分载入raphael.js库文件和chinamapPath.js路径信息文件. <script type="text/javascript" src=

php版微信数据统计接口用法示例_php技巧

本文实例讲述了php版微信数据统计接口用法.分享给大家供大家参考,具体如下: php版微信数据统计接口其实是非常的好用了在前版本还没有此功能是后面的版本增加上去了,下面来看一个php版微信数据统计接口的例子: 微信在1月6日时放出了新的数据分析接口传送门: 请注意: 1.接口侧的公众号数据的数据库中仅存储了2014年12月1日之后的数据,将查询不到在此之前的日期,即使有查到,也是不可信的脏数据: 2.请开发者在调用接口获取数据后,将数据保存在自身数据库中,即加快下次用户的访问速度,也降低了微信侧

有关大数据的误区:数据统计 大数据

钛媒体注:大数据太火了,被广泛应用到各行各业,而近阶段又有着明显的过热迹象.大数据到底是一个营销词汇,还是一个方法论?本文作者老李正是一家大数据服务提供商的资深员工,他所做的项目就是针对不同行业进行大数据分析.他认为,关于大数据你首先必须有一个基本认识,那就是"大量的数据并非一定具有价值".另外,数据统计并不等同于大数据,数据统计和大数据的区别就在于人工智能.长文慎入: 近两年来,"大数据"被广泛应用到各行各业,而近阶段又有着明显的过热迹象.从央视的春运迁徙图到姚晨

有关大数据的误区:数据统计≠大数据

中介交易 SEO诊断 淘宝客 云主机 技术大厅 关于大数据的误区:数据统计是已经发生的事情,而大数据往往被用于还没有发生的事情预测或者推荐中,二者不能划等号.不过,无论数据统计也好,大数据也罢,都是为了使工作变得更为有效,让决策更为理性而准确. 大数据太火了,被广泛应用到各行各业,而近阶段又有着明显的过热迹象.大数据到底是一个营销词汇,还是一个方法论?本文作者老李正是一家大数据服务提供商的资深员工,他所做的项目就是针对不同行业进行大数据分析.他认为,关于大数据你首先必须有一个基本认识,那就是"大

医疗编辑用户体验重中之重分析后台数据统计

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 如何能写出更符合患者需求的文章?如何分析自己之前的工作成功点失败点在哪里?这就是下面我说到的后台数据统计,数据统计是我个人认为比较重要的一项内容,它不仅可以为我们的文章编辑提供素材,还能让我们学会如何分析问题,找出症结所在.下面我们就来具体看一下,个人比较喜欢cnzz与百度统计联合看,朋友们可以根据自己的习惯.筛选来用,只需要在网站中加入统计

分享python数据统计的一些小技巧_python

最近在用python做数据统计,这里总结了一些最近使用时查找和总结的一些小技巧,希望能帮助在做这方面时的一些童鞋.有些技巧是很平常的用法,平时我们没有注意,但是在特定场景,这些小方法还是能带来很大的帮助. 1.在字典中将键映射到多个值上面 {'b': [4, 5, 6], 'a': [1, 2, 3]} 有时候我们在统计相同key值的时候,希望把所有相同key的条目添加到以key为键的一个字典中,然后再进行各种操作,这时候我们就可以使用下面的代码进行操作: from collections im

ECharts使用jQuery和PHP、MySQL异步读取数据例子

ECharts地图主要用于地理区域数据的可视化,展示不同区域的数据分布信息.ECharts官网提供了中国地图.世界地图等地图数据下载,通过js引入或异步加载json文件的形式调用地图. ECharts地图应用:使用jQuery和PHP.MySQL异步读取数据 本文将结合实例讲解如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据,我们以中国地图为例,展示去年(2015年)我国各省份GDP数据.通过异步请求php,读取mysql中的数据,然后展示在地图上,因此本文除了你掌握前

Excel中数据透视图在教师课时数据统计中的应用

  Excel中数据透视图在教师课时数据统计中的应用           1.用Ecxel2013打开文件"课时统计表".xlsx,打开界面如下: 2.在统计的任意区域中选择任意单元格,单击菜单"插入→数据透视图",选择"数据透视图",打开"创建数据透视图"对话框,如图: 3.在弹出的对话框中,默认选中了原始数据的整个区域,确认分析的数据的区域为整个工作表,选择放置数据透视图的位置为"新工作表:单击"确定&