羲和能源大数据平台——Python数据绘图方法

news2024/9/22 5:21:36

1. 写在前面

目前论文对绘图的美观度要求越来越高,在气象领域呈现维度高,时空关联的特性,为了充分展示数据在各个维度的特性,选用合适的绘图方法至关重要,下图给出了如今在科研领域中个常用的各类图像:线型图、气泡图、雷达图、直方图、饼状图、带状图、散点图、箱形图、小提琴图等等。大家为了画出一个图可谓是卷出了“新花样”。
最近,我们频繁收到用户的反馈说平台绘图十分优美,但是却不知道怎么才能画出来,于是我们开启了一期专门的绘图教程,帮助我们的客户在论文撰写、汇报时更“优美”的展示数据。相关内容将持续更新,想要掌握更多的绘图技巧,请记得关注我们~

图源:https://www.reddit.com/r/datascience/comments/bo8a0c/the_fun_way_to_understand_data_visualization/

2. 线型图

线型图可谓是最简单的反应数据变化规律的图,因为现实中的数据都是离散的,将有相关规律的两个变量通过线型图展示出来时最直观的,一般线型图的横坐标为时间(不是绝对的),纵坐标为需要展示的数据。下图为羲和中下载数据后画出来的线型图。

线型图的绘制十分简单,Excel、Python、R、Matlab、LaTeX等都能非常简单的画出线型图,然而Excel中自带的线型图并不是十分美观,推荐用Python等编程语言进行绘制,Python中matplotlib、seaborn、plotly等第三方库支持非常多的优美图,可以通过pypi安装
以下是Python中绘制的方式:

绘制结果:

当然,我们也可以选在在一幅图中绘制多个变量,只需要更改参数y 即可:

在这个非常注重配色搭配的时代,在多个颜色的图中往往会选择饱和度较低的颜色,我们可以更改 template 和 color_discrete_sequence 两个参数来调整背景和线的颜色。
以下是两个参数的参考文档,这在我们后面的绘图中也十分重要:
template: https://plotly.com/python/templates/
color_discrete_sequence:https://plotly.com/python/discrete-color/

3. 分布玫瑰图(以风向为例)

风向在气象数据里面是反映风速方向的变量,由于风向的范围是0~360度,因此可以统计出风向的分布情况,进而通过玫瑰图等展示频率分布的图像来更为清晰的展示风向的分布情况,以下是羲和中下载风向数据后自动画出的风向分布玫瑰图:

然而,我们下载到的羲和气象数据是时序数据,因此我们需要首先统计不同风向区间的数据点频率,再绘制出玫瑰图。有了这个思想,我们就可以十分轻松的用Python来实现风向玫瑰图的绘制了:

以下是绘制效果:

同样我们也可以通过改变template 和 color_discrete_sequence 两个参数来调整背景和饼状的颜色。

4. 下期提示

下一期,我们将展示如何在风向玫瑰图中一同展示风速的强度:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2108979.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

远程教育与学习:探索远程控制技术在教育领域的新机遇

什么适合会用到远程控制工具?如果你是运维、是设计或者外勤需要办公的一些资料文件,有远程控制工具工具的话就能轻松解决这些情况。为了保证电脑的安全我建议从官方网站进行下载,比如从向日葵远程控制官网下载就可以得到向日葵的官方正版。这…

Docker Container 常用命令

文章目录 目录 文章目录 1 . 什么是容器? 2 . 容器命令清单 docker create docker run docker ps docker logs docker exec docker kill docker container inspect docker cp docker rm docker export 总结 1 . 什么是容器? 通俗地讲&a…

C++设计模式——Command命令模式

一,命令模式的定义 命令模式是一种行为型设计模式。在实际开发场景中,命令模式将一个请求的处理或者一个具体操作封装为一个对象,从而可以让开发者根据不同的请求参数来生成不同的执行函数。 命令模式的本质是对具体命令的拆解和封装&#…

【Git远程仓库】将本地仓库推送到github(踩坑记录)

上一篇博客已经介绍了git本地仓库的基本操作,接下来记录一下如何将本地仓库上传到远程仓库中 远程仓库:托管在因特网的版本库,保存版本库的历史记录,多人协作 1. 创建远程版本库,得到远程仓库git地址 2. 本地仓库添加…

C#复习之内部类和分布类

知识点一:内部类 知识点二:分布类 知识点三:分部方法

DisplayManagerService启动-Android13

DisplayManagerService启动-Android13 1、DisplayManagerService启动1.1 简要时序图 2、DEFAULT_DISPLAY主屏幕添加3、默认屏幕亮度 1、DisplayManagerService启动 1.1 简要时序图 2、DEFAULT_DISPLAY主屏幕添加 3、默认屏幕亮度

C#复习之继承的基本规则

知识点一:基本概念 知识点二:基本语法 知识点三:实例 知识点四:访问修饰符的影响 知识点五:子类和父类的同名成员 总结:

MIT线性代数

本文链接的原创作者为 浊酒南街https://blog.csdn.net/weixin_43597208 第1讲 MIT_线性代数笔记:第 01 讲 行图像和列图像-CSDN博客 第2讲 MIT_线性代数笔记:第 02 讲 矩阵消元_矩阵first pivot-CSDN博客 第3讲 MIT_线性代数笔记:第 03…

反弹shell介绍和应用

一、什么是反弹shell 1 .含义 反向连接弹shell(即反弹shell为攻击者为服务端,受害者主机为客户端主动连接攻击者的服务端) 2 .目的 对方主机在外网无法访问 对方主机防火墙限制,只能发送请求,不能接收请求 对方IP动态变化 攻击了一台主机需要在自己的机器上…

3D一览通助力成都派铂宇航航天管道设计交付

在航空航天这一高精尖行业中,每一处细节都承载着不可估量的责任与使命。特别是在航天航空管道设计制造的复杂供应链中,任何误差都可能引发连锁反应,影响整体性能乃至安全。当前,航空航天行业面临的一大挑战在于如何有效管理这一复…

【数据结构】LinkedList ------ java实现

知识框架图&#xff1a; LinkedList是一种常用的数据结构。底层是一个双向链表。每个节点包含数据以及指向前一个节点和后一个节点的引用。 一&#xff1a;LinkedList的使用 1.1 LinkedList的构造方法 方法 解释LinkedList() 无参构造public LinkedList(Collection<? exte…

【教程】MySQL数据库学习笔记(六)——数据查询语言DQL(持续更新)

写在前面&#xff1a; 如果文章对你有帮助&#xff0c;记得点赞关注加收藏一波&#xff0c;利于以后需要的时候复习&#xff0c;多谢支持&#xff01; 【MySQL数据库学习】系列文章 第一章 《认识与环境搭建》 第二章 《数据类型》 第三章 《数据定义语言DDL》 第四章 《数据操…

Day16_0.1基础学习MATLAB学习小技巧总结(16)——元胞数组

利用空闲时间把碎片化的MATLAB知识重新系统的学习一遍&#xff0c;为了在这个过程中加深印象&#xff0c;也为了能够有所足迹&#xff0c;我会把自己的学习总结发在专栏中&#xff0c;以便学习交流。 素材来源“数学建模清风” 特此说明&#xff1a;本博客的内容只在于总结在…

详细讲解hive on tez中各个参数作用,以及如何优化sql

最近经常有优化sql的任务&#xff0c;但是自己能力有限&#xff0c;只能凭经验去优化&#xff0c;现整理加学习一波&#xff0c;也欢迎各位学习和讨论。 我们经常用hivesql 的模型就是 join.如下。 insert overwrite table a select * from b left join c 这里面发生了什么…

【C++取经之路】map的详细介绍及其使用

目录 关于map 键值对 map的常用操作 关于multimap 关于map template < class Key, // map::key_typeclass T, // map::mapped_typeclass Compare less<Key>, //…

【时间盒子】-【5.绘制闹钟】动态绘制钟表和数字时间

Tips: Preview装饰器&#xff0c;支持组件可预览&#xff1b; Component装饰器&#xff0c;自定义组件&#xff1b; Canvas组件的使用&#xff1b; 使用RenderingContext在Canvas组件上绘制图形&#xff0c;请参考官方文档&#xff1a;https://developer.huawei.com/consume…

Apache ShardingSphere数据分片弹性伸缩加解密中间件

Apache ShardingSphere Apache ShardingSphere 是一款分布式 SQL 事务和查询引擎,可通过数据分片、弹性伸缩、加密等能力对任意数据库进行增强。 软件背景 ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding…

如何利用python实现碰撞原理

先看图 跑了大概一天 这是结果 具体是通过BIP39规则生成的种子数据 生成完词组后&#xff0c;再根据词组生成姨太地址 # 生成随机助记词 def generate_mnemonic():entropy os.urandom(16) # 随机生成 16 字节熵mnemonic []for i in range(12): # 生成 12 个助记词word_in…

欧拉数据库的搭建及其部署

数据库的搭建 进行数据库安装前&#xff0c;必须保证软件yum仓库搭建完成 使用命令 dnf install mariadb-server&#xff0c;发现冲突selinux-policy-targeted-35.5-21.oe2203sp3.noarch有问题 [rootlocalhost yum.repos.d]# dnf install mariadb-server [rootlocalhost y…

Arthas工具使用,分析线上问题好帮手

在K8S中的步骤&#xff1a; #1.进入node #2.下载arthas 在容器中下载并启动 Arthas&#xff1a; java -jar arthas-boot.jar --repo-mirror aliyun --use-http #3.找到出现问题的类和方法的绝对路径 类路径 方法 #4.执行trace命令或者watch命令 trace:命令会追踪方法的执…