本文共 1186 字,大约阅读时间需要 3 分钟。
•有时在我们使用matplotlib.pyplot
绘制可视化图像时会出现图像显示不全,如下图所示:
•在最新版的matplotlib中,子图所距上、下、左、右边界的参数默认为1.0
•但是当电脑分辨率过低时,默认值1.0会导致绘图窗口不足,使得上、下、左边的部分被剪切 •解决方法:使用subplots_adjust()方法
修改默认的参数值,使图像显示完全
plt.gcf().subplots_adjust(left=None,top=None,bottom=None, right=None, top=None)
•left, right, bottom, top:子图所距区域的边界的参数值,是一个数值型参数,当值大于1.0的时候子图会超出边界从而显示不全;值不大于1.0的时候,子图会自动分布在一个矩形区域显示图像,但不是绝对的可以显示完全,可能需要我们自定义设置不大于1.0的参数值
•注意:一定要保证left的值小于right的值, bottom 的值小于 top的值,否则一定会报错!!!
•回到我们最初的问题上,图像出现上边,下边,左边显示不完全的情况,可在装饰图像中添加如下代码解决:
plt.gcf().subplots_adjust(left=0.05,top=0.91,bottom=0.09)
•修改left,top,bottom的参数值,使之不大于1.0
•出现很少部分不图像能显示时,可使参数值小只有小,只有出现很大一部分图像不能显示时,参数值才会靠近1.0参考代码:
# 装饰图像gridobj.set(xlim=(0.5,7.5),ylim=(0,50)) # 横纵坐标范围plt.rcParams['font.sans-serif']=['Simhei'] # 设置字体为黑体plt.xlabel('发动机排量(l)',fontsize=20)plt.ylabel('公里路程/加仑',fontsize=20)plt.xticks(fontsize=16)plt.gcf().subplots_adjust(left=0.05,top=0.91,bottom=0.09) # 在此添加修改参数的代码plt.legend(['气缸数:4','气缸数:8'],fontsize=22)plt.title('Scatterplot with line of best fit grouped by number of cylinders',fontsize=20)plt.show()
图像显示:
•添加上述方法后,图像完全显示,即为解决matplotlib.pyplot绘图时图片显示不全的问题!!!转载地址:http://qyrzi.baihongyu.com/