Loading...
墨滴

yuanzhoulvpi

2021/10/30  阅读:57  主题:橙心

中国地图数据分享

地图数据分享

不知道大家是不是经常遇到一些地图数据问题。比如我前几天在B站投递了一个视频,结果被打回来,主要是使用了不规范的中国地图。后来,我把视频打了马赛克,才通过审核。

之前我也遇到过很多群友,因为是使用了不规范的中国地图,导致一些论文没有通过审核的。

其实说来也很搞笑,既然地图数据要求审核这么严格,但是就没有见到什么官方网站去发布过标准的地图数据:比如shp格式的,json格式的。

为了解决这个问题,我决定拿出我的之前使用的高德地图数据,分享给大家。高德地图给的中国地图数据肯定没有任何问题了。

地图展示:

中国全局地图

北京市地图

安徽省地图

浙江省地图

江苏省地图

山东省地图

河北省地图

河南省地图

新疆维吾尔自治区地图

香港特别行政区地图

广东省地图

上海市地图

杭州市地图

汇总

这里只是展示部分内容:

视频(截图试一试)

地理数据内容介绍

这个数据目前包括有:

  1. 全国地图;该有的都有,懂得都懂。
  2. 市、区(县)。

目前数据格式全部为json格式。有3526个json文件,每一个文件包含的内容,全部都在文件名上标记好。

使用方法

PYTHON版本使用

import numpy as np
import pandas as pd
import geopandas as gpd 
import matplotlib.pyplot as plt 

map_data = gpd.read_file("中国地图数据文件夹/100000_中华人民共和国_full.json")
map_data['coords'] = map_data['geometry'].apply(lambda x: x.representative_point().coords[:][0])


plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']

fig, ax = plt.subplots(figsize=(10,7), dpi=300)
map_data.plot(ax=ax, column='name')
for idx, row in map_data.iterrows():
    plt.annotate(text=row['name'], xy=row['coords'],
                 horizontalalignment='center',size=4)
plt.show()

R版本使用

library(tidyverse)
library(sf)

#如果电脑显示字体没问题,那就不需要这块代码
library(showtext)
showtext_auto()



file_name <- "中国地图数据文件夹/100000_中华人民共和国_full.json"

map_data <- sf::read_sf(file_name)

map_data %>% mutate(id = rnorm(n = n())) %>%
  ggplot(aes(geometry = geometry, fill = id)) +
  geom_sf(show.legend = FALSE) +
  geom_sf_text(aes(label = name), size = 2) + theme_bw() +
  labs(fill = "", x = '', y = '') +
  theme(panel.border = element_blank()) +
  scale_fill_viridis_c()

如何获得这个数据

数据整理不易,如果想要这个数据,获得数据也是非常的简单。

  1. 转发本推文到朋友圈,点赞超过20个。然后将朋友圈截图发送到公众号。

  2. 可以选择途径:一个是可以提供百度网盘链接。一个是邮件分享发送(需要填写邮件地址)。数据会有延迟,但是不会迟到~

关注本公众号

更多

如果想要了解更多R和python内容,欢迎关注我,一起探讨数据问题。可以微信群一起沟通~

  1. 微信群:

  2. 微信群过期的话,可以添加我的微信:

yuanzhoulvpi

2021/10/30  阅读:57  主题:橙心

作者介绍

yuanzhoulvpi