笔记:绘图进阶

主要功能:

  1. 双坐标轴
  2. 多子图共用一个横坐标
  3. 横坐标时间刻度设置(方便)
# -*- coding: utf-8 -*-
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.dates as mdatesif __name__ == '__main__':# 风速data_df = pd.read_excel(r'E:\PT\20231021\3\data.xlsx', sheet_name='风', na_values=['VRB', 'C'])data_arr = np.array(data_df)wind_d = data_arr[:, range(0, 48, 2)].flatten()wind_v = data_arr[:, range(1, 48, 2)].flatten()# 气温data_df = pd.read_excel(r'E:\PT\20231021\3\data.xlsx', sheet_name='气温', header=None)t_arr = np.array(data_df).flatten()# 露点温度data_df = pd.read_excel(r'E:\PT\20231021\3\data.xlsx', sheet_name='露点温度', header=None)dewt_arr = np.array(data_df).flatten()# 能见度data_df = pd.read_excel(r'E:\PT\20231021\3\data.xlsx', sheet_name='能见度', header=None)vis_arr = np.array(data_df).flatten()# 气压data_df = pd.read_excel(r'E:\PT\20231021\3\data.xlsx', sheet_name='气压', header=None)p_arr = np.array(data_df).flatten()# 画图x = pd.date_range(start='201711020100', end='201712020000',freq='H') # 生成时间序列# 创建一个包含4个子图的画布fig, (ax1, ax2, ax3, ax4) = plt.subplots(nrows=4, ncols=1, figsize=(8, 10), sharex=True)# 在第一个子图上画图ax1.plot(x, wind_v,'b')ax1.set_ylabel('wind/(m/s)')# 创建第一个子图的右侧纵坐标轴ax1_right = ax1.twinx()ax1_right.plot(x, vis_arr,'r')  # 替换 wind_v_right 为您的右侧纵坐标数据ax1_right.set_ylabel('vis/(m)')  # 或者您想要的任何右侧纵坐标标签# 在第二个子图上画图ax2.plot(x, t_arr,'b')ax2.set_ylabel('t(℃)')# 创建第2个子图的右侧纵坐标轴ax2_right = ax2.twinx()ax2_right.plot(x, vis_arr,'r')  # 替换 wind_v_right 为您的右侧纵坐标数据ax2_right.set_ylabel('vis/(m)')  # 或者您想要的任何右侧纵坐标标签# 在第三个子图上画图ax3.plot(x, t_arr - dewt_arr,'b')ax3.set_ylabel('t-td/(℃)')# 创建第3个子图的右侧纵坐标轴ax3_right = ax3.twinx()ax3_right.plot(x, vis_arr,'r')  # 替换 wind_v_right 为您的右侧纵坐标数据ax3_right.set_ylabel('vis/(m)')  # 或者您想要的任何右侧纵坐标标签# 在第4个子图上画图ax4.plot(x, p_arr,'b')ax4.set_ylabel('P/(0.1hPa)')ax4.set_xlabel('Time')# 创建第4个子图的右侧纵坐标轴ax4_right = ax4.twinx()ax4_right.plot(x, vis_arr,'r')  # 替换 wind_v_right 为您的右侧纵坐标数据ax4_right.set_ylabel('vis/(m)')  # 或者您想要的任何右侧纵坐标标签ax4.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d %H:%M:%S'))  # 设置x轴标签的格式为日期时间格式ax4.xaxis.set_major_locator(mdates.DayLocator())  # 设置x轴标签的间隔为每天一个标签ax4.tick_params(axis='x', rotation=90)  # 旋转x轴标签90度# 显示画布plt.tight_layout()  # 自动调整子图间距,以适应子图大小和位置的变化plt.show()

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源软件-禅道Zentao

禅道Zentao 简介漏洞复现SQL注入漏洞**16.5****router.class.php SQL注入** **v18.0-v18.3****后台命令执行** 远程命令执行漏洞(RCE)后台命令执行 简介 是一款开源的项目管理软件,旨在帮助团队组织和管理他们的项目。Zentao提供了丰富的功能…

10. 机器学习-评测指标

Hi,你好。我是茶桁。 之前的课程中,我们学习了两个最重要的回归方法,一个线性回归,一个逻辑回归。也讲解了为什么学习机器学习要从逻辑回归和线性回归讲起。因为我们在解决问题的时候,有限选择简单的假设,越复杂的模型…

jvm 各个版本支持的参数

知道一些 jvm 调优参数,但是没有找到官网对应的文档,在网上的一些文章偶然发现,记录一下。 https://docs.oracle.com/en/java/javase/ 包含各个版本 jdk 8 分为 windows 和 unix 系统 https://docs.oracle.com/javase/8/docs/technotes/too…

【ChatGLM2-6B】nginx转发配置

背景 好不容易把ChatGLM2-6B大语言模型部署好了,使用streamlit方式启动起来了,终于可以愉快的玩耍了,然后想着申请一个域名,使用HTTPS协议访问,但实践过程中,发现这个大语言模型的nginx转发配置还是有点小…

STM32F4x之中断一

一、中断简介 中断概念:程序在运行过程中发生了外部或内部事件时,导致中断了正在执行的程序,让CPU转到外部或内部事件中去执行。 中断的作用:大量节约CPU资源,提高程序的效率,即避免重要事件被错过。 中断…

利用TypeScript 和 jsdom 库实现自动化抓取数据

以下是一个使用 TypeScript 和 jsdom 库的下载器程序,用于下载zhihu的内容。此程序使用了 duoip.cn/get_proxy 这段代码。 import { JSDOM } from jsdom; import { getProxy } from https://www.duoip.cn/get_proxy;const zhihuUrl https://www.zhihu.com;(async (…

NFT Insider112:The Sandbox聘请Apple高管担任其首席内容官,YGG 将在菲律宾举办Web3游戏峰会

引言:NFT Insider由NFT收藏组织WHALE Members、BeepCrypto联合出品,浓缩每周NFT新闻,为大家带来关于NFT最全面、最新鲜、最有价值的讯息。每期周报将从NFT市场数据,艺术新闻类,游戏新闻类,虚拟世界类&#…

Qt扫盲-QTextCodec理论总结

QTextCodec理论总结 一、概述二、编码支持三、使用四、创建自己的编解码器类 一、概述 QTextCodec 是Qt提供的一个管理字符串编码的功能,他可以在不同编码方式中来回转换,在文件读取的时候、格式编码转换的时候用处很大。Qt使用Unicode 编码来存储、绘制…

Aocoda-RC F405V2 FC(STM32F405RGT6 v.s. AT32F435RGT7) IO Definitions

[TOC](Aocoda-RC F405V2 FC(STM32F405RGT6 v.s. AT32F435RGT7) IO Definitions) 1. 源由 Aocoda-RC F405V2飞控支持betaflight/inav/Ardupilot固件,是一款固件兼容性非常不错的开源硬件。 之前我们对比过STM32F405RGT6 v.s. AT32F435RGT7 Comparison for Flight …

java中的容器(集合),HashMap底层原理,ArrayList、LinkedList、Vector区别,hashMap加载因子0.75原因

一、java中的容器 集合主要分为Collection和Map两大接口;Collection集合的子接口有List、Set;List集合的实现类有ArrayList底层是数组、LinkedList底层是双向非循环列表、Vector;Set集合的实现类有HashSet、TreeSet;Map集合的实现…

freeipa server副本同步中断,两主节点数据不一致

/var/log/messages 和/var/log/dirsrv/slapd-testhadoop-COM 日志都出现以下日志: If replication stops, the consumer may need to be reinitialized. [27/Jun/2023:05:15:09.469361922 0800] - ERR - NSMMReplicationPlugin - changelog program - repl_plugin_name_cl - a…

使用Axure RP和内网穿透技术制作静态站点并实现公网访问

文章目录 前言1.在AxureRP中生成HTML文件2.配置IIS服务3.添加防火墙安全策略4.使用cpolar内网穿透实现公网访问4.1 登录cpolar web ui管理界面4.2 启动website隧道4.3 获取公网URL地址4.4. 公网远程访问内网web站点4.5 配置固定二级子域名公网访问内网web站点4.5.1创建一条固定…

某全球领先的芯片供应商:优化数据跨网交换流程,提高安全管控能力

1、客户介绍 某全球领先的芯片供应商,成立于2005年,总部设于北京,在国内上海、深圳、合肥等地及国外多个国家和地区均设有分支机构和办事处,致力于为客户提供更优质、便捷的服务。 2、建设背景 该公司基于网络安全管理的需求&am…

PCA降维可视化

二维 import pandas as pd import warnings warnings.filterwarnings("ignore")df pd.read_csv(data/data.csv).dropna() features df.columns[:-1] X, y df[features], df[label]from sklearn.preprocessing import MinMaxScaler # 创建MinMaxScaler对象 scaler…

接口测试 Jmeter 接口测试 —— 请求 Headers 与传参方式

一、 背景: 在使用 Jmeter 进行接口测试时,有些小伙伴不知道 Headers 和请求参数 (Parameters,Body Data) 的联系,本文主要讲 Content-Type 为 application/x-www-form-urlencoded 和 application/json 的场景。 1、使用 Parame…

【ROS 2 基础-常用工具】-7 Rviz仿真机器人

所有内容请查看:博客学习目录_Howe_xixi的博客-CSDN博客

OpenLDAP LDIF详解

手把手一步步搭建LDAP服务器并加域 有必要理解的概念LDAPWindows Active Directory 服务器配置安装 OpenLDAP自定义安装修改对象(用户和分组等)修改olcSuffix 和 olcRootDN 属性增加olcRootPW 属性修改olcAccess属性验证新属性值 添加对象(用…

线性代数-Python-01:向量的基本运算 - 手写Vector及numpy的基本用法

文章目录 一、代码仓库二、向量的基本运算2.1 加法2.2 数量乘法2.3 向量运算的基本性质2.4 零向量2.5 向量的长度2.6 单位向量2.7 点乘/内积:两个向量的乘法 --答案是一个标量 三、手写Vector代码3.1 在控制台测试__repr__和__str__方法3.2 创建实例测试代码3.3 完整…

sql中的group by 举例子数据库日期带汉字转换2023年10月18天

sql中的group by 举例子 sql中 group by多个字段,对所有字段做group by_group by 多个字段_Foools的博客-CSDN博客 【精选】玩转SQL语句之group by 多字段分组查询与having子句,一篇解决你的疑惑!_sql多个分组查询-CSDN博客 select to_char…

【PACS系统源码】与医院HIS系统双向数据交换,实现医学影像集成与影像后处理功能

​医院医学影像PACS系统源码,集成三维影像后处理功能,包括三维多平面重建、三维容积重建、三维表面重建、三维虚拟内窥镜、最大/小密度投影、心脏动脉钙化分析等功能。系统功能强大,代码完整。 PACS系统与医院HIS实现双向数据交换&#xff0c…