python之pyplot
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之pyplot相关的知识,希望对你有一定的参考价值。
参考技术A1、 定义x和y,画图展示,保存图片
其中dpi参数指定图像的分辨率为120
2、 优化绘图线条风格
线条颜色color
线条标记marker
线条风格linestyle
3、 坐标轴的控制
坐标轴范围和标题
坐标图上标记
坐标间隔设定
函数plt.xticks()和plt.xticks()用来实现对x轴和y轴坐标间隔(也就是轴记号)的设定。用法上,函数的输入是两个列表,第一个表示取值,第二个表示标记。当然如果你的标记就是取值本身,则第二个列表可以忽略
多图与子图
figure() 函数可以帮助我们同时处理生成多个图,而subplot()函数则用来实现,在一个大图中,出现多个小的子图。需要注意的是, figure() 中的参数为图片序号,一般是按序增加的,这里面还涉及一个当前图的概念,其中 subplot() 的参数有3个,分别为行数、列数、以及子图序号。比如 subplot(1,2,1) 表示这是一个1行,2列布局的图(两个子图,在同一行,分居左右),其中,当前处理的子图是第一个图(也就是左图)。
这样,我们就用一个脚本画了两张图fig.1和fig.2。其中,fig.1包含了分居左右的两个子图,分别是y1和y3的曲线;fig.2是一张整图,画的是y2曲线。
如果想要某个子图占据整行或者整列,可以采用下面
第三个图,实际上相当于将前面的两个小的子图看作是一个整图
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之pyplot的主要内容,如果未能解决你的问题,请参考以下文章