python 绘制中国地图并利用经纬度标注散点

所需要的包:GeoPandas,安装教程有很多,自行百度即可。

用到的中国地级市shp文件:链接:https://pan.baidu.com/s/18aaxczrz4tIRMeCusOrDQA 
                                              提取码:rav1

一、GeoPandas类简单介绍

GeoPandas实现了两个主要的数据结构,GeoSeries和GeoDataFrame。它们分别是pandas中Series和DataFrame的子类。实际上,如果你了解DataFrame结构,这个就很好理解了。

一个GeoSeries就是包含一个几何图形的序列,比如多边形、点。具体形式就在下图,如果想要绘图,很简单,只要用plot方法就可以,多边形GeoSeries绘制出来的就是多边图形, 点GeoSeries当然就是绘制点了。

多边形GeoSeries:

点GeoSeries:

绘图实例:

读取shp文件绘制中国地图

china_map=gp.GeoDataFrame.from_file("C:/Users/Administrator/Desktop/map_shp/shipnew/中国行政区划2004_shp/dijishi_2004.shp",\encoding = 'gb18030')
china_map.plot(figsize=(20,12),color="white", edgecolor="black")

利用经纬度绘制散点图:

lng = data2002com['lng']
lat= data2002com['lat']
pts = gp.GeoSeries([Point(x, y) for x, y in zip(lng, lat)])pts.plot(figsize=(12,8))

二、世界地图标注实例

这一部分主要是解释官方网站的一个例子,为自己绘制地图标注散点做准备。

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
import os
import geopandas as gp
from shapely.geometry import Point# 官方数据
world = gp.read_file(gp.datasets.get_path('naturalearth_lowres'))
cities = gp.read_file(gp.datasets.get_path('naturalearth_cities'))#注意world.shape =(177,6)
#  cities.shape = (202,2)fig, ax = plt.subplots()ax.set_aspect('equal')world.plot(ax=ax, color='white', edgecolor='black')
cities.plot(ax=ax, marker='o', color='red', markersize=5)
plt.show()

绘图的机制其实很好理解,就是第一个图层是一个世界地图的多边形,第二个图层是一些城市的经纬度点,把这些经纬度点映射到世界地图上就是这个样了。

三、中国地图标注实例

只需要地图数据的shp文件,还有就是经纬度,就可以实现自己的地图。

china_map=gp.GeoDataFrame.from_file("C:/Users/Administrator/Desktop/map_shp/shipnew/中国行政区划2004_shp/dijishi_2004.shp",\encoding = 'gb18030')
data2002com = pd.read_excel(r'C:\Users\Administrator\Desktop\经纬度数据\按公司名称 \2002.xlsx')# 几何图形
geo_ploy = china_map['geometry']
# 地图点
geo_point = gp.GeoSeries([Point(x, y) for x, y in zip(lng, lat)])fig, ax = plt.subplots(figsize=(12,8))ax.set_aspect('equal')
# 几何图形绘制
geo_ploy.plot(ax=ax, color='white', edgecolor='black')# 地图点标注
geo_point.plot(ax=ax, marker='o', color='black', markersize=0.1)

python 绘制中国地图并利用经纬度标注散点相关推荐

  1. Python 绘制中国地图并标上国家名

    直接使用cartopy库绘制中国以及周边国家的地图时,中国国界线有问题(藏南地区没有画到中国国界线内等)也没有九段线.下面的程序可以将国家标准国界线和九段线都添加到地图上,并标出国家名称 import ...

  2. python绘制中国_使用python绘制中国地图

    前言 有的时候需要将一些相关的数据放到地图上,可以更加直观的展示,人们也更加容易的阅读理解.比如一些大企业的全国分布,全国各地的温度数据,上映电影的各地票房情况等等.为了实现将数据可视化与地图相结合, ...

  3. python中国地图代码 上色_如何让使用python绘制中国地图并给特定地区上色?

    在使用python Basemap绘制地图并给特定地区染色的过程中,有些地区无法上色.请问各位大神有无解决方法? 我是准备给14个地区染色,但是能成功上色的只有6个省和直辖市. 请问这是Basemap ...

  4. 【Python 实战基础】 如何绘制中国地图展示省份GDP数据

    目录 一.实战场景 二.主要知识点 文件读写 基础语法 字符串处理 文件生成 数据构建 循环遍历 三.菜鸟实战 1.创建 python 文件 2.运行结果 一.实战场景 实战场景: 如何绘制中国地图展 ...

  5. Basemap绘制中国地图

    2022.06.02更新 CHN_adm_shp.zip 网盘下载链接: 链接:https://pan.baidu.com/s/11igf-bfDLuolI5HzEykzMw 提取码:oas6 201 ...

  6. Android-高级-UI-进阶之路-(七)-SVG-基础使用-+-绘制中国地图

    给 path 定义 name,如下所示 定义一个 Animator 文件,以表示对这幅 Vector 图像做动画 <?xml version="1.0" encoding=& ...

  7. [数据分析与可视化] Python绘制数据地图2-GeoPandas地图可视化

    本文主要介绍GeoPandas结合matplotlib实现地图的基础可视化.GeoPandas是一个Python开源项目,旨在提供丰富而简单的地理空间数据处理接口.GeoPandas扩展了Pandas ...

  8. Python调用高德地图API实现经纬度换算、地图可视化

    作者 | 糖甜甜甜 出品 | 经管人学数据分析 Python调用高德地图API实现经纬度换算.地图可视化 前地图可视化的工具和函数比较多,但是在不知道相关地点经纬度的情况下,通过python调用高德地 ...

  9. Matlab绘制中国地图(大陆地区)

    1 简介 MATLAB是著名的科学软件,具有绘图.编程.仿真等强大的功能.现在介绍MATLAB绘制中国地图的三种方式,分别是(1)使用m_map工具箱命令绘制中国地图:(2)使用mapshow和geo ...

  10. 你还在为高德地图找不到门牌号等详细地址而烦恼吗?你还在等什么——Python调用高德地图API实现经纬度换算、地图可视化

    Python调用高德地图API实现经纬度换算.地图可视化 前地图可视化的工具和函数比较多,但是在不知道相关地点经纬度的情况下,通过python调用高德地图API实现经纬度换算,并且直接在高德地图新推出 ...

最新文章

  1. WSE 3.0 文档翻译:安装WSE3.0
  2. 早上起来收到两个消息
  3. 记录一次生产环境下的jvm内存泄露问题和分析解决过程!
  4. Dreamweaver 8的后台文件传输
  5. 透彻理解块级元素的宽度
  6. HTML的文本中只允许有日期输入
  7. maven国内镜像配置
  8. 哈夫曼编码压缩率计算_程序员的算法课(8)-贪心算法:理解霍夫曼编码
  9. boost::core实现交换std::type_info
  10. 数据结构学习笔记(一)——《大话数据结构》
  11. 31 SD配置-主数据-信用管理-定义自动信贷控制
  12. 百家搜索:在网站中添加Google、百度等搜索引擎
  13. linux下PowerDNS不完全配置
  14. amesim2020安装
  15. 计算机基础竞赛知识试题,计算机基础知识及基本技能操作竞赛试题
  16. hard link soft link
  17. 微信浮窗是不是服务器保存,微信浮窗,能解决小程序留存难题吗?
  18. Unity 资源池,对象池,Object Poor
  19. 秒杀功能设计思想 php,seckill-system-php
  20. 为了找工作学习ssm

热门文章

  1. 乌班图系统安装mysql
  2. linux gvim字体大小配置,Gvim 字体大小设置
  3. 使用slickedit代替sourceinsight
  4. CNVD 与 CNNVD 的区别
  5. 后缀名是ofd是什么文件?可以转成PDF吗
  6. 怎么查看当前系统jdk版本
  7. Apizza-快如何进行API开发进度管理
  8. MES系统之生产管理系统功能介绍(源码)
  9. rp文件,怎么用浏览器预览
  10. Android 四大组件之Activity