完美解决matplotlib子图坐标轴重叠问题

 更新时间:2021年04月16日 11:48:24   作者:自然卷卷、  
这篇文章主要介绍了完美解决matplotlib子图坐标轴重叠问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

绘制matplotlib多个图形于一张图时往往会出现相邻图坐标轴重叠的现象

此时只须在汇完所有子图后加上以下代码即可

plt.tight_layout()

补充:解决matplotlib横坐标日期过长导致的重叠、无法完全显示问题(换行)

该方法较为繁杂,主要是将年月日和时间分开,通过使用plt.text根据坐标位置将年月日重新加上,前面是为了进行时间转化,

有用的代码为

> plt.text(zb[link],-1.2,year,ha='center')#需要根据自己的位置调整Y的坐标即调整-1

完整程序:

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
time1 =input("输入一个时间(时、分、秒以空格分割):")
year = input('请输入年份,格式如 2019-8-30 :')
n = input('请输入X轴分段数:')
old_time_x = []
time1List = time1.split(" ")
time1List = [int(x) for x in time1List]
'''时间转化'''
shi = time1List[0]
fen = time1List[1]
miao = time1List[2]
for x in range(eval(n)+1):
    time_x = '%02d:%02d:%02d'%(shi,fen,miao)
    old_time_x.append(time_x)
    miao += 60
    while miao >= 60:
        miao = miao - 60
        fen += 1
        while fen >= 60:
            fen = fen -60
            shi += 1
            while shi > 24:
                shi = shi - 24
print(old_time_x)
x = np.arange(0,10,1)
y = np.arange(0,10,1)
fig = plt.figure(figsize=(12,6)) 
plt.xticks(np.linspace(0,9,eval(n)),old_time_x,rotation=0)
zb = np.linspace(0,9,eval(n))
print(zb)
for link in range(len(zb)):
    plt.text(zb[link],-1.2,year,ha='center')#需要根据自己的位置调整Y的坐标即调整-1
plt.plot(x,y)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • 浅谈python函数之作用域(python3.5)

    浅谈python函数之作用域(python3.5)

    下面小编就为大家带来一篇浅谈python函数之作用域(python3.5)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 5行Python代码实现电脑永不息屏

    5行Python代码实现电脑永不息屏

    最近新来的小老弟问我,按照公司规定,电脑只有十分钟就锁屏,但是他不想让电脑在空闲十分钟后锁屏。本文为大家准备了电脑永不息屏的两种方法,感兴趣的可以了解一下
    2022-10-10
  • 使用Tensorflow-GPU禁用GPU设置(CPU与GPU速度对比)

    使用Tensorflow-GPU禁用GPU设置(CPU与GPU速度对比)

    这篇文章主要介绍了使用Tensorflow-GPU禁用GPU设置(CPU与GPU速度对比),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python编写电话薄实现增删改查功能

    Python编写电话薄实现增删改查功能

    这篇文章主要为大家详细介绍了Python编写电话薄实现增删改查功能的相关资料,感兴趣的朋友可以参考一下
    2016-05-05
  • Python实现21点小游戏的示例代码

    Python实现21点小游戏的示例代码

    1931年,当美国内华达州宣布赌博为合法活动时,21点游戏第一次公开出现在内华达州的赌场俱乐部,15年内,它取代掷骰子游戏,而一举成为非常流行的赌场庄家参与的赌博游戏。本文将用Python实现这一经典游戏,感兴趣的可以了解一下
    2022-09-09
  • Python中accumulate函数的用法详解

    Python中accumulate函数的用法详解

    累积(accumulate)函数是Python标准库itertools中的一个强大工具,用于对可迭代对象进行累积操作,下面我们将深入探讨accumulate函数的用法,感兴趣的小伙伴可以了解下
    2023-11-11
  • 利用Python编写简易版德州扑克小游戏

    利用Python编写简易版德州扑克小游戏

    德州扑克不知道大家是否玩过,它是起源于美国的得克萨斯州的一种博弈类卡牌游戏,英文名叫做Texas Hold’em Poker。本文将用Python实现这一游戏,需要的可以参考一下
    2022-03-03
  • python安装以及IDE的配置教程

    python安装以及IDE的配置教程

    Python在Linux、windows、Mac os等操作系统下都有相应的版本,不管在什么操作系统下,它都能够正常工作。除非使用平台相关功能,或特定平台的程序库,否则可以跨平台使用。今天我们主要来探讨下windows系统下的安装与配置
    2015-04-04
  • Python进程间通信multiprocess代码实例

    Python进程间通信multiprocess代码实例

    这篇文章主要介绍了Python进程间通信multiprocess代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • OpenCV实现透视变换的示例代码

    OpenCV实现透视变换的示例代码

    本文主要介绍了OpenCV实现透视变换的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07

最新评论