Matplotlib中有子图坐标轴重叠怎么办,如何解决好

Admin 2022-07-06 群英技术资讯 519 次浏览

这篇文章主要介绍“Matplotlib中有子图坐标轴重叠怎么办,如何解决好”,有一些人在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)


感谢各位的阅读,以上就是“Matplotlib中有子图坐标轴重叠怎么办,如何解决好”的内容了,经过本文的学习后,相信大家对Matplotlib中有子图坐标轴重叠怎么办,如何解决好都有更深刻的体会了吧。这里是群英网络,小编将为大家推送更多相关知识点的文章,欢迎关注! 群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服