Ushahidi是一家非盈利软件公司,人们可以通过短信向其提供有关自然灾害和地缘政治事件的信息。这些数据会被发布在他们的网站上以提供分析和图形化。本节,利用2010年海底地震及其余震期间搜集的数据。

数据下载在       https://download.csdn.net/download/qq_21467113/10828284

该练习为Python2代码,主要是Python3不支持Basemap。

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.basemap import Basemapdata = pd.read_csv('D:\programme\sqldata\Haiti.csv')
data = data[(data.LATITUDE>18)&(data.LATITUDE<20)&(data.LONGITUDE>-75)&(data.LONGITUDE<-70)&data.CATEGORY.notnull()]
def to_cat_list(catstr):stripped = (x.strip() for x in catstr.split(','))return [x for x in stripped if x]def get_all_categories(cat_series):cat_sets = (set(to_cat_list(x)) for x in cat_series)return sorted(set.union(*cat_sets))def get_english(cat):code,names = cat.split('.')if '|' in names:names = names.split('|')[1]return code,names.strip()all_cats = get_all_categories(data.CATEGORY)
english_mapping = dict(get_english(x) for x in all_cats)def get_code(seq):return [x.split('.')[0] for x in seq if x]all_codes = get_code(all_cats)
code_index = pd.Index(np.unique(all_codes))
dummy_frame = pd.DataFrame(np.zeros((len(data), len(code_index))), index = data.index, columns = code_index)for row,cat in zip(data.index,data.CATEGORY):codes = get_code(to_cat_list(cat))dummy_frame.ix[row,codes] = 1data = data.join(dummy_frame.add_prefix('category_'))def basic_haiti_map(ax=None,lllat=17.25,urlat=20.25,lllon=-75,urlon=-71):m = Basemap(ax=ax,projection='stere',lon_0=(urlon + lllon)/2,lat_0=(urlat + lllat)/2, llcrnrlat=lllat,urcrnrlat=urlat,llcrnrlon=lllon,urcrnrlon=urlon,resolution='f')m.drawcoastlines()m.drawstates()m.drawcountries()return mfig,axes = plt.subplots(nrows=2,ncols=2,figsize=(12,10))
fig.subplots_adjust(hspace=0.05,wspace=0.05)to_plot = ['2a','1','3c','7a']lllat=17.25; urlat=20.25; lllon=-75; urlon=-71for code,ax in zip(to_plot,axes.flat):m = basic_haiti_map(ax, lllat=lllat,urlat=urlat,lllon=lllon, urlon=urlon)cat_data = data[data['category_%s' %code]==1]x,y = m(cat_data.LONGITUDE.values,cat_data.LATITUDE.values)m.plot(x,y, 'k.', alpha=0.5)ax.set_title('%s: %s' %(code,english_mapping[code]))print("over!!")
plt.show()

处理结果为:

数据分析练习Ⅱ----图形化显示海地地震危机数据相关推荐

  1. python数据分析二一:图形化显示海地地震危机数据

    知识点回顾 zip() >>>a = [1,2,3] >>> b = [4,5,6] >>> c = [4,5,6,7,8] >>&g ...

  2. 2015-03-29-绘图和可视化(3)-绘制地图:图形化显示海地地震危机数据

    --------------------------------------------------------------------------------------- -----(三)绘制地图 ...

  3. 绘制地图:图形化显示海地地震危机数据

    再修改部分代码后,可执行代码如下: from mpl_toolkits.basemap import Basemap from pandas import DataFrame,Series impor ...

  4. Basemap实战---图形化显示海地地震危机数据

    数据来源 https://github.com/wesm/pydata-book >>> import pandas as pd >>> from pandas i ...

  5. 第8章 图形化显示地震危机数据(海地)

    第8章 图形化显示地震危机数据(海地) import pandas as pd import numpy as np from pandas import Series,DataFrame impor ...

  6. OSM数据分析及图形化显示以及各组员之间的关系Relation的存储

    OpenStreetMap(OSM) https://wiki.openstreetmap.org/wiki/Elements OSM虽然是简称,但如果赋予数据的话,它就是一种格式,格式以.osm结尾 ...

  7. LabVIEW 图形化显示数据

    原文: https://lv.qizhen.xyz/data_graph 能够方便的把数据以图形化的方式展现出来,是 LabVIEW 的一大特色.LabVIEW 为此提供了丰富的控件和函数,可以大大简 ...

  8. python图形化显示股票数据

    在 Python 中可以使用 matplotlib 库来进行股票数据的图形化显示.首先,你需要安装 matplotlib 库,可以使用如下命令进行安装: pipinstall matplotlib 然 ...

  9. 2020年英文取名大数据分析及图形化

    2020年英文取名大数据数据分析 前言 一.概要 二.数据处理 1.数据清洗 2.感兴趣的英文名 3.中文名 三.图形化及分析 1.女生 2.男生 3.总体数据 前言 一.概要 本文主要通过panda ...

最新文章

  1. php新闻模块,新闻模块实现
  2. 【每周CV论文推荐】 初学高效率CNN模型设计应该读的文章
  3. 在Linux上的虚拟机上启动Oracle上报ORA-00845: MEMORY_TARGET not supported on this system的问题解决
  4. Swing开发界面时的一个bug复盘
  5. mysql存储过程触发器_【MySQL笔记】触发器,存储过程和函数
  6. 数字图像处理:图像平均/加法_OPT小讲堂 ∣ SciSmart图像增强之二值化
  7. C++_选择结构_循环结构_for循环_敲桌子案例_嵌套循环_乘法口诀案例_跳转语句break---C++语言工作笔记018
  8. 线程安全与synchronized
  9. 在高并发环境下Reids做缓存踩坑记录
  10. 如何查看Linux发行版内核版本及系统版本?
  11. window docker 查看镜像仓库_10.Docker容器镜像Registry仓库安全构建与GC回收
  12. dnf 跨服 服务器 位置,dnf跨区怎么跨_dnf国服跨区表_快吧游戏
  13. Visual FoxPro权威指南pdf
  14. sublime text2-text3 定义的不同浏览器的预览快捷键
  15. PrestoDB 大数据查询引擎
  16. VMware连接不上网络解决办法
  17. 【万字解读】数据可视化图表使用场景大全 !
  18. 瑞萨e2studio(1)----瑞萨芯片之搭建FSP环境
  19. 快递是否签收,分享小技巧查询物流查看已签收件
  20. 中国科学技术大学 先进技术研究院

热门文章

  1. 微信小程序 支付功能
  2. VuePress的安装及设置
  3. 基于BP神经网络预测电力负荷(Matlab代码实现)
  4. c语言break语句作用,解析c语言switch中break语句的具体作用
  5. linux删除多余日志,linux删除及设置日志
  6. C语言中删除字符串中一个字母,C程序删除字符串中除字母之外的所有字符
  7. 【君思智慧园区】物业综合管理系统,物业管理收费软件系统包括哪些?
  8. Caysn打印机IOS平台打印示例及接口说明文档 - 20161008
  9. 记录一次反selenium爬虫经历
  10. qt实战技巧-数据可视化之COMTRATE格式解析(一)