在使用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")
到此这篇关于python使用matplotlib绘制图片时x轴的刻度处理的文章就介绍到这了,更多相关python matplotlib x轴刻度处理内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/weixin_44052055/article/details/119955661