python数据可视化之matplotlib.pyplot绘图时图片显示不全的解决方法(图文并茂版!!!)
Posted 温柔且上进c
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python数据可视化之matplotlib.pyplot绘图时图片显示不全的解决方法(图文并茂版!!!)相关的知识,希望对你有一定的参考价值。
问题分析
•有时在我们使用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绘图时图片显示不全的问题!!!
以上是关于python数据可视化之matplotlib.pyplot绘图时图片显示不全的解决方法(图文并茂版!!!)的主要内容,如果未能解决你的问题,请参考以下文章
python ipython_matplotlib_img.py