python使用matplotlib绘制图片时x轴的刻度处理

在使用matplotlib绘制图片时,x轴的刻度可能比较密集,特别是以日期作为x轴时,则最后会显示不出来。

数据如下,速度V的数组与时间字符串Date的数组:

在这里插入图片描述

绘制随时间变化的值的折线图。

直接绘制折线图,可以发现x轴重叠。

plt.plot(Date, V1, 'r', label='a')
plt.plot(Date, V2, 'blue', label='b')
plt.plot(Date, V3, 'black', label='c')
plt.plot(Date, V4, 'yellow', label='d')

在这里插入图片描述
可以导入ticker库来解决这个问题,ticker可以改变数据轴的间距来解决日期显示不完整的问题。

import matplotlib.pyplot as plt
import matplotlib.ticker as ticker

# 根据ticker的功能改变第一个为初始的数据,第二个则为间隔
ticker_spacing = Date  # 日期的字符串数组
ticker_spacing = 4
# 创建画布
fig, ax = plt.subplots(1, 1)
plt.plot(Date, V1, 'r', label='a')
plt.plot(Date, V2, 'blue', label='b')
plt.plot(Date, V3, 'black', label='c')
plt.plot(Date, V4, 'yellow', label='d')

# rotation=30 为倾斜的度数,因为日期较长,需要倾斜才能更清晰显示
ax.xaxis.set_major_locator(ticker.MultipleLocator(ticker_spacing))
plt.xticks(rotation=30)

在这里插入图片描述
最后,如果遇到保存图片显示不全的情况,如下:
在这里插入图片描述则只需要在保存图片的时候加上参数:bbox_inches=‘tight’,即可解决问题。

plt.savefig('Lekima.tif', dpi=300, bbox_inches='tight')
  • 8
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值