Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python可视化| 山峦地图绘制

python可视化| 山峦地图绘制

作者头像
郭好奇同学
发布于 2021-02-12 10:00:21
发布于 2021-02-12 10:00:21
1.2K00
代码可运行
举报
文章被收录于专栏:好奇心Log好奇心Log
运行总次数:0
代码可运行

本期推文我们就使用Python-ridge_map包绘制山峦效果的地图可视化作品。主要内容如下:

  • Python-ridge_map包简介
  • Python-ridge_map包 实例应用

Python-ridge_map包简介

ridge_map包作为Python第三方包就是为绘制“山峦”地图而生,其官网为:https://github.com/ColCarroll/ridge_map,官方提供的例子如下:(由于官网提供的例子都需要在线下载数据,但由于有的小伙伴无法科学上网,这里只提供效果图)

「样例1」

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from ridge_map import RidgeMap

RidgeMap().plot_map()

Sample_01

「样例2」

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from ridge_map import FontManager

font = FontManager('https://github.com/google/fonts/blob/master/ofl/uncialantiqua/UncialAntiqua-Regular.ttf?raw=True')
rm = RidgeMap((-156.250305,18.890695,-154.714966,20.275080), font=font.prop)

values = rm.get_elevation_data(num_lines=100)
rm.plot_map(values=rm.preprocess(values=values, lake_flatness=2, water_ntile=10, vertical_ratio=240),
            label="Hawai'i",
            label_y=0.85,
            label_x=0.7,
            label_size=60,
            linewidth=2,
            line_color=plt.get_cmap('ocean'),
            kind='elevation')

(注:更多例子大家可参照官网,其数据都是在线获取)

Python-ridge_map包 实例应用

鉴于网络问题,这一部分我们提供实例数据进行可视化教程绘制,使用的数据为png格式的DEM数据。这里需要使用cv2 包进行图片读取。

在绘制之前,我们需要对图片数据进行“转置”操作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import cv2
import numpy as np

img_file = r"G:\middle_earth.png"

img = cv2.imread(img_file, 0)
height = img.shape[0]
line_interval = int(height / 150)
image_values = []
for i in reversed(range(img.shape[0])):
    if (i % line_interval) == 0:
        row_values = []
        for j in range(img.shape[1]):
            if (j % 1) == 0:
                row_values.append(img[i][j])
        image_values.append(row_values)
values_pro = np.array(image_values)

数据结果如下:

数据处理后

我们对比下数据处理之前的(注意红色框中内容):

数据处理后

接下来我们直接进行可视化绘制,这里直接给出绘图代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots(figsize=(9,6), dpi=100,facecolor="#EFEFE1")
ax.set_facecolor("#EFEFE1")

rm = RidgeMap()
values = rm.preprocess(values=values_pro,
                       water_ntile=20,
                       lake_flatness=2,
                       vertical_ratio=30)
# 可视化绘制
rm.plot_map(values=values,
            label='',
            label_y=0.2,
            label_x=0.2,
            label_size=30,
            linewidth=.6,
            line_color="black",
            kind='elevation',
            background_color="#EFEFE1",
            ax=ax)

ax.text(.5,1.1,"Map Charts in Python Exercise 02:Ridge_map Exercise",transform = ax.transAxes,ha='center', 
        va='center',fontweight="bold",fontsize=15)
ax.text(.5,1.03, "processed map charts with Ridge_map",
        transform = ax.transAxes,ha='center', va='center',fontsize = 10,color='black')
ax.text(.83,.0,'\nVisualization by DataCharm',transform = ax.transAxes,
        ha='center', va='center',fontsize = 8,color='black')
plt.show()

最终可视化结果如下:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 好奇心Log 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
可视化绘制| Python-ridge_map山峦地图绘制
在推文使用R快速绘制“山峦图”(工具分享 | linemap-快速绘制山峦地图的R可视化包介绍),有小伙伴就问Python 能不能绘制类似的地图效果?答案是:当然啦!本期推文我们就使用Python-ridge_map包绘制山峦效果的地图可视化作品。主要内容如下:
DataCharm
2021/02/22
4960
可视化绘制| Python-ridge_map山峦地图绘制
地图(二)利用python绘制山脊线地图
以上利用ridge_map快速绘山脊线地图,并通过mplcyberpunk包尝试赛博朋克风。
HsuHeinrich
2025/02/20
780
地图(二)利用python绘制山脊线地图
(数据科学学习手札98)纯Python绘制满满艺术感的山脊地图
  下面的这幅图可能很多读者朋友们都看到过,这是英国摇滚乐队Joy Division在1979年发行的其第一张录音室专辑Unknown Pleasures的封面,由艺术家Peter Saville基于射电脉冲星信号的数据图创作而成,成为了一种流行文化的符号标志。
Feffery
2020/11/24
1K0
(数据科学学习手札98)纯Python绘制满满艺术感的山脊地图
R-Python 基础图表绘制-核密度估计图
前面介绍了基础直方图的绘制教程,接下来,同样分享一篇关于数据分布的基础图表绘制-核密度估计图。具体含义我们这里就不作多解释,大家可以自行百度啊,这里我们主要讲解R-python绘制该图的方法。本期知识点主要如下:
DataCharm
2021/02/22
6590
R-Python 基础图表绘制-核密度估计图
Python-Basemap核密度空间插值可视化绘制
上一篇的推文我们使用geopandas+plotnine 完美绘制高斯核密度插值的空间可视化结果,并提供了一个简单高效的裁剪方法,具体内容点击链接:Python-plotnine 核密度空间插值可视化绘制Python-plotnine 核密度空间插值可视化绘制。
DataCharm
2021/02/22
2.2K0
Python-Basemap核密度空间插值可视化绘制
数据可视化 | 双Y轴可视化绘制方法(Python、R两种方法)
最近有很多小伙伴私信我关于双Y轴图的绘制方法? 这里给出Python-matplotlib绘制方法和R-ggplot2的绘制方法
郭好奇同学
2020/12/28
1.9K0
数据可视化 | 双Y轴可视化绘制方法(Python、R两种方法)
Python-plotnine 核密度空间插值可视化绘制
从本期开始,我会陆续推出系列空间插值的推文教程,包括常见的「Kriging(克里金插值法)、Nearest Neighbor(最近邻点插值法)、Polynomial Regression(多元回归法)、Radial Basis Function(径向基函数法)」 等多种空间插值方法,探索空间可视化带给我们的视觉魅力。
DataCharm
2021/02/22
5.6K1
Python-plotnine 核密度空间插值可视化绘制
相关性分析你了解多少?可视化展示一下吧~~
今天小编介绍数据分析中最常用的方法之一相关性分析,该步骤多用于数据探索过程中,用于检测数据维度之间的相关密切程度。本文将通过以下内容介绍相关性分析:
DataCharm
2022/10/25
4.5K0
相关性分析你了解多少?可视化展示一下吧~~
Python-pykrige包-克里金(Kriging)插值计算及可视化绘制
前面两篇推文我们分别介绍了使用Python和R进行IDW(反距离加权法) 插值的计算及结果的可视化过程,详细内容可见如下:
DataCharm
2021/02/22
16.6K0
Python-pykrige包-克里金(Kriging)插值计算及可视化绘制
数据可视化 | seaborn绘制散点图
由于涉及的图表类型为多类别散点图的绘制,在使用常规matplotlib进行绘制时会显得格外繁琐,所以我们选择了对matplotlib进行了更高级的API封装,使作图更加容易的seaborn包进行图表的绘制,更多seaborn 介绍,大家可以直接去seaborn官网进行相关资料的查阅。数据的读取使用的功能强大的数据处理包 pandas ,这里只是进行简单的删除空值操作,直接使用dropna() 函数操作即可,我们直接预览数据,如下(部分):
郭好奇同学
2020/11/25
2K0
数据可视化 | seaborn绘制散点图
干货,用Python绘制“手绘风格”图表的所有方法!
今天给大家带来绘制“手绘风格”可视化作品的小技巧,主要涉及Python编码绘制,内容如下:
小F
2021/06/25
1K0
干货,用Python绘制“手绘风格”图表的所有方法!
Python-matplotlib 学术散点图 EE 统计及绘制
之前的绘制图文Python-matplotlib 学术散点图完善Python-matplotlib 学术型散点图绘制 教程中,对学术散点图已经进行了较为完善的绘制教程,但这几天的通过准备 论文图表再现计划 以及后台小伙伴的留言,发现在绘制的相关性散点图中,各个范围的 Expected Error (EE)的统计个数没有在图表中进行展示 ,即下图中左下角的信息没有绘制。
DataCharm
2021/02/22
9730
Python-matplotlib 学术散点图 EE 统计及绘制
Python可视化 | Seaborn经济学人经典图表仿制
上篇原创推文使用了R-ggplot2 实现了经济学人经典的图表仿制实现R-ggplot2 经典经济学人图表仿制,所以这期呢,我们就使用Python-seaborn实现这个经典的经济学人图表再现。主要涉及的知识点如下:
郭好奇同学
2020/11/25
1.2K0
Python可视化 | Seaborn经济学人经典图表仿制
Python-seaborn 基础图表绘制-柱形图(数据分享)
上期介绍了使用R-ggplot绘制基础柱形图的绘制推文,本期按照惯例,我们继续推出Python 版本的绘制方法,当然我们也是经过美化修饰的结果,毕竟要自己看的过去才行。本期推文主要涉及的知识点如下:
DataCharm
2021/02/22
1.4K0
Python-seaborn 基础图表绘制-柱形图(数据分享)
Python-Matplotlib 动态柱形图绘制(数据分享)
这期开始,我们将公众号刚开始的不成熟风格文章推文改成与现在相统一的风格,同时也为了解决大家复制不了代码的问题,本期推文,将介绍使用Python-matplotlib 绘制动态柱形图的教程推文,主要涉及的知识点如下:
DataCharm
2021/02/22
1.6K0
Python-Matplotlib 动态柱形图绘制(数据分享)
工具包 | 使用Python绘制Sci学术期刊配图
之前还在讨论Matplotlib没有很好的第三方主题库呢?这不,又被我发现了一个宝藏库,还专门用于一些学术期刊的图表发表,可谓是弥补了matplotlib 繁琐的自定义设置。好了,话不多说,今天这篇推文的主角就是Github 上拥有1.6k 星之多的科学论文图表绘制库「SciencePlots」。推文的主要内如下:
气象学家
2020/10/09
13.1K0
工具包 | 使用Python绘制Sci学术期刊配图
Python-matplotlib 商业图表-第5弹
第一次使用 Markdown Nice 进行公众号编写(其实刚开始运营公众号时也有使用过,奈于代码编辑就放弃,不过,现在“真香”了 ),希望熟悉后定制自己属于自己的主题。本期还是继续前面的Python-matplotlib 商业图表绘制系列的第5篇教程推文,目的还是为了熟悉matplotlib的绘图语法。
DataCharm
2021/02/22
2530
Python-matplotlib 商业图表-第5弹
Python-matplotlib 横向堆积柱状图绘制
,经群里爱学习的小伙伴们提醒,居然漏了一个常用的柱状图形式。看吧····知识点还是没有系统起来(最近也在对各种图表进行系统规整哦,包括学术和商业的
DataCharm
2021/02/22
6.6K1
Python-matplotlib 横向堆积柱状图绘制
Python-matplotlib 堆积柱状图绘制
在查找资料时看到了堆积柱状图,简单明了,而且绘制起来也不是很难,再结合自己的教程推文中也确实没有此类图表,即决定通过构建虚拟数据进行matplotlib堆积柱状图的绘制推文,详细内容如下:
DataCharm
2021/02/22
1.8K0
Python-matplotlib 堆积柱状图绘制
Python-matplotlib 商业图表仿制第6弹
今天我们就推出一篇商业图表的仿制,之前的学术图表(空间可视化方面)也是很受小伙伴的喜欢,我们要商业学术同时进行哦!毕竟,优秀的商业可视化图表能够更直观的体现数据可视化的魅力。话不多说,我们就直接上教程。
DataCharm
2021/02/22
2580
Python-matplotlib 商业图表仿制第6弹
相关推荐
可视化绘制| Python-ridge_map山峦地图绘制
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验