主页 > 知识库 > 完美解决matplotlib子图坐标轴重叠问题

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

热门标签:客户服务 语音系统 Win7旗舰版 硅谷的囚徒呼叫中心 呼叫中心市场需求 百度AI接口 电话运营中心 企业做大做强

绘制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使用matplotlib:subplot绘制多个子图的示例
  • matplotlib subplot绘制多个子图的方法示例
  • matplotlib 画双轴子图无法显示x轴的解决方法
  • python matplotlib画盒图、子图解决坐标轴标签重叠的问题
  • matplotlib绘制多个子图(subplot)的方法
  • Python数据分析matplotlib设置多个子图的间距方法
  • matplotlib subplots 调整子图间矩的实例
  • matplotlib之pyplot模块实现添加子图subplot的使用

标签:山西 安康 济南 海南 喀什 长沙 山西 崇左

巨人网络通讯声明:本文标题《完美解决matplotlib子图坐标轴重叠问题》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266