#geopandas python地理数据处理

瓦片地图:瓦片地图金字塔模型是一种多分辨率层次模型,从瓦片金字塔的底层到顶层,分辨率越来越低,但表示的地理范围不变。首先确定地图服务平台所要提供的缩放级别的数量N,把缩放级别最低、地图比例尺最大的地图图片作为金字塔的底层,即第0层,并对其进行分块,从地图图片的左上角开始,从左至右、从上到下进行切割,分割成相同大小(比如256x256像素)的正方形地图瓦片,形成第0层瓦片矩阵;在第0层地图图片的基础上,按每2x2像素合成为一个像素的方法生成第1层地图图片,并对其进行分块,分割成与下一层相同大小的正方形地图瓦片,形成第1层瓦片矩阵;采用同样的方法生成第2层瓦片矩阵;…;如此下去,直到第N一1层,构成整个瓦片金字塔。


1.geopandas 地图加载

In [1]: import numpy as np

In [2]: import matplotlib.pyplot as plt

In [3]: import geopandas

In [4]: from collections import Counter

In [5]: from collections import namedtuple

In [6]: import pandas as pd

In [7]: l=list(np.random.randint(0,10,20))

In [8]: l
Out[8]: [3, 7, 1, 5, 5, 1, 7, 9, 7, 8, 5, 1, 3, 5, 2, 3, 3, 3, 7, 4]

In [9]: d=Counter(l)

In [10]: d
Out[10]: Counter({1: 3, 2: 1, 3: 5, 4: 1, 5: 4, 7: 4, 8: 1, 9: 1})

In [11]: rand=np.random.laplace(loc=15,scale=3,size=500)

In [12]: n,bins,pathes=plt.hist(x=d,bin='auto',color='#0504aa',alpha=0.7,width=0.85)

In [28]: world=geopandas.read_file(geopandas.datasets.get_path('naturalearth_lowres'))

In [29]: cities=geopandas.read_file(geopandas.datasets.get_path('naturalearth_cities'))
     world = world[(world.pop_est>0) & (world.name!="Antarctica")]

     world['gdp_per_cap'] = world.gdp_md_est / world.pop_est
 world.plot(column='gdp_per_cap',cmap='OrRd',scheme='quantiles')

2.多底层图绘制

点图层为世界主要城市

In [45]: base=world.plot(color='white',edgecolor='black')

In [46]: cities.plot(ax=base,marker='o',color='red',markersize=5)

geopandas python地图绘制的更多相关文章

  1. Matplotlib Toolkits:地图绘制工具

    Matplotlib Toolkits:地图绘制工具 有没有一种可以直接在详细地图(如谷歌地图)上绘制上百万坐标点的工具???谷歌地图坐标点多了也不能绘制了. Basemap (Not distrib ...

  2. Python地图栅格化实例

    Python地图栅格化实例 引言 shapefile是GIS中的一种非常重要的数据类型,由ESRI开发的空间数据开放格式,目前该数据格式已经成为了GIS领域的开放标准.目前绝大多数开源以及收费的GIS ...

  3. C#小程序飞行棋地图绘制

    1. 初始化地图,在绘制时可先将地图进行初始化,用数组来存储关卡的位置,然后利用循环给地图中 关卡所在处赋予代表关卡的值. 关键代码如下 /// <summary> /// 初始化游戏地图 ...

  4. opengl典型例程立方体投影与地图绘制

    立方体投影 http://www.cnblogs.com/opengl/p/3790450.html 地图绘制 http://www.cnblogs.com/opengl/p/3790354.html

  5. Python turtle绘制阴阳太极图代码解析

    本文详细分析如何使用Python turtle绘制阴阳太极图,先来分解这个图形,图片中有四种颜色,每条曲线上的箭头表示乌龟移动的方向,首先从中心画一个半圆(红线),以红线所示圆的直径作半径画一个校园, ...

  6. python+matplotlib 绘制等高线

    python+matplotlib 绘制等高线 步骤有七: 有一个m*n维的矩阵(data),其元素的值代表高度 构造两个向量:x(1*n)和y(1*m).这两个向量用来构造网格坐标矩阵(网格坐标矩阵 ...

  7. ECharts 地图绘制与钻取简易接口

    1.地图绘制过程原理 给定范围边界经纬度数据,再给它个名字就构成了绘制地图的基础.也就是说,你可以绘制任意形状的地图版块. 2.地图数据生成 中国以及省市县等地图的基础数据可以从这里生成与下载. ht ...

  8. arcgis api for javascript 学习(五) 实现地图绘制工具

    1.本文实现的功能为鼠标与地图之间的交互,能够在地图上绘制不同形状的图形 2.代码部分主要讲到的为Graphic函数的相关功能 <!DOCTYPE html> <html> & ...

  9. python蟒蛇绘制

    使用IDLE的文件方式编写代码并保存为PythonDraw.py文件 python蟒蛇绘制 import turtle引入了海龟绘图体系 使用setup函数,设定了一个宽650像素和高350像素的窗体 ...

随机推荐

  1. 【并查集】POJ2236-Wireless Network

    [题目大意] 已知每一台电脑只能与它距离为d的电脑相连通,但是两台电脑间可以以第三台作为媒介连接.现在电脑全被损坏.每次可以进行两个操作中的一个,或是修好一台电脑,或是查询两台电脑是否连通. [思路] ...

  2. insert失败自动执行update(duplicate先insert)

    例如:有一张表 字段有  id主键自增,或者唯一索引:datetime时间  name名字 INSERT INTO TABLE (id,datetime) VALUES (1,1440000000), ...

  3. JavaScript基础入门教程(五)

    说明 本系列博客的第一篇已经说明了,要求阅读者需要具有其它语言的编程基础,所以关于组数的基础部分本篇博客将不再赘述,主要讲js中数组的特性. 创建数组 数组的创建主要有两种方法,一种是数组直接量,还有 ...

  4. phaser框架制作游戏的例子,加上自己的注释

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 玩转Google开源C++单元测试框架Google Test系列(gtest)(转)

    转自:http://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html 前段时间学习和了解了下Google的开源C++单元测试框架Googl ...

  6. 如何在 Ubuntu 上搭建网桥

    导读作为一个 Ubuntu 16.04 LTS 的初学者.如何在 Ubuntu 14.04 和 16.04 的主机上搭建网桥呢?顾名思义,网桥的作用是通过物理接口连接内部和外部网络.对于虚拟端口或者 ...

  7. select()/poll() 的内核实现

    mark 引用:http://janfan.cn/chinese/2015/01/05/select-poll-impl-inside-the-kernel.html 文章 select()/poll ...

  8. PHP数组问题

    转换为数组 对于任意 integer , float , string , boolean 和 resource 类型,如果将一个值转换为数组,将得到一个仅有一个元素的数组,其下标为 0,该元素即为此 ...

  9. 做一个创建cocos2d-x新项目的shell脚本

    1. 进入console目录 cd /Users/apple/Documents/MyArchitecture/Cocos2d-x/Framework/cocos2d-x-3.4/tools/coco ...

  10. 有道单词导入 有道单词 生词本 批量导入 添加 有道单词XML 背单词

        本程序 主要功能: 对有道生词实现批量导入功能   生成有道单词XML的功能,实现快速导入 有了本程序后就可以批量添加生词. 有道生词本 XML模板 分析 word   为单词,可以为一个单词 ...