码迷,mamicode.com
首页 > 编程语言 > 详细

python填充地图

时间:2020-12-02 12:24:00      阅读:8      评论:0      收藏:0      [点我收藏+]

标签:运行   das   dpi   read   不能   rom   选择   htm   min   

某些公司经常有需求分华东、华南、华北等自定义区域,地图展现时就需要自定义边界,本文介绍如何通过自定义边界绘制地图。

1、geopandas绘制地图

上篇文章地址:https://www.cnblogs.com/ayajing/p/14006082.html

根据上篇文章,geopandas绘图步骤很容易,直接展示绘图代码:

import matplotlib as mpl
import matplotlib.pyplot as plt
import geopandas
# from adjustText import adjust_text

mpl.rcParams["font.family"] = "SimHei"
mpl.rcParams["axes.unicode_minus"]=False # 用来正常显示负号
plt.rcParams[font.sans-serif]=[SimHei] # 用来正常显示中文标签

# 读取数据
ch = geopandas.read_file(result.json)

# 绘制地图
fig, ax = plt.subplots(figsize = (6, 6), dpi = 200)

ch_map = ch.geometry.plot(ax = ax, facecolor = #FFFFFF, edgecolor = #C0C0C0, lw = 1)
ax.axis(off)

# 在地图上添加区名文本
# for loc, label in zip(ch.geometry.representative_point(), ch.name):
#    ax.text(loc.x, loc.y, label, size = 10, color = 000000)
    
plt.savefig(中国地图.jpg)
plt.show()

最后绘制的地图是这样的:

技术图片

 

 

 2、绘制上图前可能需要原始的数据,上述代码中的result.json

  • 同上一篇文章,找到全国的地图json :http://datav.aliyun.com/tools/atlas/
  • 保存为json文件后在name后面新建一个字段area:
  • 技术图片
  • 用网站将json合并
    • 打开网站:https://mapshaper.org/
    • select文件的位置,导入数据:
    • 选择导入(import):
    • 技术图片
    •  打开控制台:

    • 技术图片
    • 在控制台中输入:dissolve ‘area‘ -o result.json
    • 点击运行之后,会自动下载一个合并好的json文件
  • 将新的json文件的名称改为name (aere不能识别):
  • 技术图片

     

     最后,json文件生成

python填充地图

标签:运行   das   dpi   read   不能   rom   选择   htm   min   

原文地址:https://www.cnblogs.com/ayajing/p/14050005.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!