python数据处理——双y轴图

2023-10-28

画图要求:x轴表示时间,两个y轴,y轴的单位不一致。

例如:x轴表示时间,y1表示情感值,y2表示次数。

颜色对应表查询网址:颜色代码对应表

或是调用python中的画图模块:Choosing Colormaps in Matplotlib — Matplotlib 3.5.2 documentation

画出的图如下:

 代码如下:

#横坐标是时间,两个纵坐标
import numpy as np                             # 导入各个模块
import matplotlib.pyplot as plt
import pandas as pd
from pandas import Series, DataFrame
from pylab import mpl
import palettable

mpl.rcParams['font.sans-serif'] = ['SimHei']   # 设置字体为黑体
mpl.rcParams['axes.unicode_minus'] = False     # 解决中文字体负号显示不正常问题

xls_file = pd.ExcelFile('E:/数据分析及可视化/示例1.xlsx')  
table = xls_file.parse('Sheet1')                 
df = table.set_index('日期')        # 将日期设为索引
fig = plt.figure(figsize=(8,4))
ax1 = fig.add_subplot(111)

df['情感值'].plot(ax=ax1,ls='-',alpha=1,color=plt.cm.Set1(5))    # alpha表示点的透明程度
plt.xlabel('日期')
plt.xticks(rotation = 360)

box=ax1.get_position()
ax1.set_position([box.x0,box.y0,box.width,box.height*0.8])
ax1.set_ylabel('情感值',color=plt.cm.Set1(5))
ax2 = ax1.twinx()
df['次数'].plot(ax=ax2, grid=True, alpha=1, style='.-',color=plt.cm.Set2(3))

ax2.set_yticks(np.arange(0,1500,300))    
ax2.set_ylabel('次数(次)',rotation = 270,color=plt.cm.Set1(3))       

for key in ['right','left']:
    ax1.spines[key].set_color('none')
    ax2.spines[key].set_color('none')

for key in ['right']:
    ax2.spines[key].set_color(plt.cm.Set1(3))
for key in['left']:
    ax1.spines[key].set_color(plt.cm.Set1(5))
ax1.spines['left'].set_linewidth(2)
ax2.tick_params(colors=plt.cm.Set1(5))


ax1.legend(loc='center',bbox_to_anchor=(0.98,1.135),ncol=3)
ax2.legend(loc='center',bbox_to_anchor=(0.973,1.048),ncol=3)

plt.title('变化图')    # 给整张图命名

plt.show()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python数据处理——双y轴图 的相关文章

随机推荐

  • Windows 对文件做MD5值校验

    没想到Windows 自带MD5校验工具 场景 使用MD5校验算法 检测文件的是否损坏或被修改过 输入cmd 进入命令行界面 输入命令 certutil hashfile 文件路径 md5 还支持其他的哈希算法 实例 在D Desktop
  • SAP MM MIGO移动类型311试图做批次确定,系统报错-Stock Determination or batch determination not possible-

    SAP MM MIGO移动类型311试图做批次确定 系统报错 Stock Determination or batch determination not possible SAP系统里的批次确定功能很有用 在很多场景流程中 都可以启用这个
  • 链式线性表的就地逆置

    include
  • 简单的html网页标签

    一些网页标签
  • dayjs获取当月的第一天和最后一天

    利用dayjs获取当月第一天和最后一天 startDate dayjs this chooseMonth startOf month format YYYY MM DD endDate dayjs this chooseMonth endO
  • 电脑连接HDMI显示器后没声音

    通常电脑上自带音响声音不是很清晰 许多人选择将电脑用HDMI来连接音响 但有时连接上音响后显示器没声音 小编在此讲解链接HDMI显示器没声音方法 若是HDMI接口损坏 则此法不适用 材料 工具 HDMI 电脑 方法一 1 打开电脑 鼠标右键
  • Spring5笔记

    一 Spring概述 Spring是一个轻量级的 控制反转 IoC 和面向切面 AOP 的容器 框架 组成 核心容器 core 核心容器提供 Spring 框架的基本功能 核心容器的主要组件是 BeanFactory 它 是工厂模式的实现
  • centos7系统被入侵,挂载挖矿木马-pamdicks-(1)临时处理

    故障说明 故障环境配置 开发测试服务器 腾讯云 系统 centos7 程序启动模式 root用户直接启动 网络环境 所有端口全部对外开放 使用仅屏蔽部分关键端口ssh redis rabbitmq等 为方便服务器间数据传输方便 采用了ssh
  • Azkaban源码阅读之CachingFlowManager

    CachingFlowManager这部分为Azkaban在管理job中cache管理这一部分 public CachingFlowManager FlowManager baseManager final int cacheSize th
  • 14、Spring-Boot 加载Bean的几种方式

    01 学习内容 1 Spring Boot 加载Bean的几种方式 2 自定义starter 顺便理解springboot加载原理和机制 02 探索springboot的加载bean几种方式 springboot启动类上的注解是一个复合注解
  • 空间与虚拟服务器,虚拟空间与服务器区别

    虚拟空间与服务器区别 内容精选 换一换 当云硬盘容量空间不足时 可以有如下处理方式 创建一块新的云硬盘 并挂载给云服务器 具体操作请参见购买云硬盘 扩容原有云硬盘容量 系统盘和数据盘均支持扩容 具体操作请参见云硬盘扩容 清理云硬盘的空间 具
  • UE4 运行后视角切换到Cinecamera相机的三种方法

    目的 解决运行后Cinecamera相机无法自动切换到玩家视角 方法 1 调用这个蓝图节点 这个最简单 适合只考虑切换视角的需求 2 制作并播放关卡序列 这个有点麻烦 适合需要做关卡序列动画 3 创建GameMode和Pawn 添加Cine
  • 人脸识别之人脸检测算法

    人脸识别的一般步骤 人脸检测 gt 人脸对齐 gt 人脸特征提取 gt 计算人脸的差值 三元组损失 中心损失 gt 差值小于某一阈值则为同一个人 差值大于某一阈值则不是同一人 本文将对每一个步骤的技术现状 进行分析 并尝试实现其中最优的几种
  • ARMv8 Linux内核异常处理过程分析

    看了Linaro提供的开源ARMv8 Linux内核源码 发现ARMv8异常处理与ARMv7及之前的架构有所不同 简单分析 LinaroARMv8工程 http www linaro org engineering engineering
  • MySQL主从同步配置及相关坑

    主 mysqld 主从同步主配置开始 server id 1 节点ID 确保唯一 log bin master bin 开启mysql的binlog日志功能 sync binlog 1 控制数据库的binlog刷到磁盘上去 0 不控制 性能
  • C++如何初始化顺序表

    顺序表可以使用以下代码初始化 include
  • 如何利用chatGPT提升自己

    经过一个月的使用 我可以很肯定地告诉大家 学习是ChatGPT最能够帮助普通人的一个重要功能 此时我们不必去过度担心是否会被AI替代 而是应该注重如何利用好ChatGPT来提升自身能力 ChatGPT所学习和整理的文本量都超过了人类一生的范
  • 用C语言创建基本的栈与队列

    目录 一 栈 1 什么是栈 2 数组栈与链式栈哪个更优 3 栈的实现 Stack h Stack c lt 1 gt StackInit lt 2 gt StackPop lt 3 gt StackPush lt 4 gt StackDes
  • 基于Spring Cloud架构应用Spring Cloud Alibaba Nacos

    记录 296 场景 基于Spring Cloud架构应用Nacos 版本2 1 0 包括Nacos部署 微服务集成Nacos 微服务注册 微服务配置 微服务调用 RestTemplate和Spring Cloud OpenFeign 版本
  • python数据处理——双y轴图

    画图要求 x轴表示时间 两个y轴 y轴的单位不一致 例如 x轴表示时间 y1表示情感值 y2表示次数 颜色对应表查询网址 颜色代码对应表 或是调用python中的画图模块 Choosing Colormaps in Matplotlib M