A python package to draw china maps more easily
Project description
cnmaps是一个可以让中国地图画起来更丝滑的地图类python扩展包
安装
cnmaps依赖于cartopy>=0.19.0
,因此在安装cnmaps之前请确保cartopy已安装,cartopy的安装方法。
在完成cartopy的安装以后,你可以使用pip来安装cnmaps:$ pip install -U cnmaps
快速开始
绘制国界
用最简单直接的方式,来绘制你的第一张中国地图。
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
from cnmaps import get_adm_maps, draw_maps
fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(111, projection=ccrs.PlateCarree())
draw_maps(get_adm_maps(level='国'))
plt.show()
绘制省界
cnmaps还可以绘制各省(特区/直辖市)的地图
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
from cnmaps import get_adm_maps, draw_maps
fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(111, projection=ccrs.PlateCarree())
draw_maps(get_adm_maps(level='省'), linewidth=0.8, color='r')
plt.show()
绘制市界
cnmaps可以绘制市级的行政区地图。
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
from cnmaps import get_adm_maps, draw_maps
fig = plt.figure(figsize=(15,15))
ax = fig.add_subplot(111, projection=ccrs.PlateCarree())
draw_maps(get_adm_maps(level='市'), linewidth=0.5, color='g')
plt.show()
绘制区县界
cnmaps可以绘制区县级的行政区地图。
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
from cnmaps import get_adm_maps, draw_maps
fig = plt.figure(figsize=(20,20))
ax = fig.add_subplot(111, projection=ccrs.PlateCarree())
draw_maps(get_adm_maps(level='区县'), linewidth=0.8, color='r')
plt.show()
Logo
本项目的Logo地图是如何绘制的?请执行下面的代码。
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
from cnmaps import get_adm_maps
fig = plt.figure(figsize=(5,5))
proj = ccrs.Orthographic(central_longitude=100.0, central_latitude=30)
ax = fig.add_subplot(111, projection=proj)
ax.stock_img()
china, sourth_sea = get_adm_maps(level='国', only_polygon=True)
ax.set_global()
ax.add_geometries(china, crs=ccrs.PlateCarree(), edgecolor='r', facecolor='r')
ax.add_geometries(sourth_sea, crs=ccrs.PlateCarree(), edgecolor='r')
ax.outline_patch.set_edgecolor('white')
plt.savefig('../static/images/logo-base.png', bbox_inches='tight')
使用指南
针对本项目更多的使用方法,我们还有一份更详细的文档:cnmaps使用指南
引用
本项目适用的地图边界的数据源包括:
- GaryBikini/ChinaAdminDivisonSHP: v2.0, 2021, DOI: 10.5281/zenodo.4167299
海拔高度地形数据来自ASTER数字高程模型,并对原始数据进行了稀释。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cnmaps-1.0.2.tar.gz
(50.6 MB
view details)
Built Distribution
cnmaps-1.0.2-py3-none-any.whl
(51.9 MB
view details)
File details
Details for the file cnmaps-1.0.2.tar.gz
.
File metadata
- Download URL: cnmaps-1.0.2.tar.gz
- Upload date:
- Size: 50.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 403919df91ed828fc4131a101aae4af2d2c69f88d227ae4b8ea07339355b55fc |
|
MD5 | 1398e2bdbdf33ad2f74d84e356c7edaf |
|
BLAKE2b-256 | 06e7fc5be703ab60de97793162a8ea45af52949e69e59f3126223d5a72e50478 |
File details
Details for the file cnmaps-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: cnmaps-1.0.2-py3-none-any.whl
- Upload date:
- Size: 51.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46f4cd173e1f4156610687a85bec9dc985d6075261e4f187d3d8c2bd15d067ee |
|
MD5 | be51de1b8400e0ee52f1f8eb4e0a96f0 |
|
BLAKE2b-256 | f9379e3fd097f780456f521fb325825488787d645256d4135a84236ab6d83a6a |