时间:2021-05-23
plt(matplotlib.pyplot)使用rc配置文件来自定义图形的各种默认属性,称之为“rc配置”或“rc参数”。
通过rc参数可以修改默认的属性,包括窗体大小、每英寸的点数、线条宽度、颜色、样式、坐标轴、坐标和网络属性、文本、字体等。rc参数存储在字典变量中,通过字典的方式进行访问。
代码:
import numpy as npimport matplotlib.pyplot as plt###%matplotlib inline #jupyter可以用,这样就不用plt.show() #生成数据x = np.linspace(0, 4*np.pi)y = np.sin(x)#设置rc参数显示中文标题#设置字体为SimHei显示中文plt.rcParams['font.sans-serif'] = 'SimHei'#设置正常显示字符plt.rcParams['axes.unicode_minus'] = Falseplt.title('sin曲线')#设置线条样式plt.rcParams['lines.linestyle'] = '-.'#设置线条宽度plt.rcParams['lines.linewidth'] = 3#绘制sin曲线plt.plot(x, y, label='$sin(x)$') plt.savefig('sin.png')plt.show()参数:
plt.rcParams['savefig.dpi'] = 300 #图片像素plt.rcParams['figure.dpi'] = 300 #分辨率plt.savefig(‘plot123_2.png', dpi=200)#指定分辨率# 默认的像素:[6.0,4.0],分辨率为100,图片尺寸为 600&400# 指定dpi=200,图片尺寸为 1200*800# 指定dpi=300,图片尺寸为 1800*1200 plt.rcParams['figure.figsize'] = (8.0, 4.0) # 图像显示大小plt.rcParams['image.interpolation'] = 'nearest' # 最近邻差值: 像素为正方形#Interpolation/resampling即插值,是一种图像处理方法,它可以为数码图像增加或减少象素的数目。 plt.rcParams['image.cmap'] = 'gray' # 使用灰度输出而不是彩色输出 plt.axis('off') #打印图片的时候不显示坐标轴from:
更详细的配置参见:https://my.oschina.net/swuly302/blog/94805
这是一个绘制矩阵的函数:matplotlib.pyplot.matshow(A,fignum=None,**kwargs)
A是绘制的矩阵,一个矩阵元素对应一个图像像素。
例如:plt.matshow(Mat, cmap=plt.cm.gray),cmap代表一种颜色映射方式。
实例:
plt.plot(A, "r-+", linewidth=2, label="train") plt.plot(B, "b-", linewidth=3, label="val") plt.legend(loc="upper right", fontsize=14) # 设置位置 plt.xlabel("Training set size", fontsize=14) # 标签 plt.ylabel("RMSE", fontsize=14) plt.axis([0, 80, 0, 3])#表示要显示图形的范围plt.xticks(np.arange(0, 81, step=20))#设置刻度plt.yticks(np.arange(0, 4, step=1))Axes - Subplot - Axis 之间到底是个什么关系
用matplotlib.pyplot绘图需要知道以下几个概念:
用画板和画纸来做比喻的话,figure就好像是画板,是画纸的载体,但是具体画画等操作是在画纸上完成的。在pyplot中,画纸的概念对应的就是Axes/Subplot。
figure (1) VS figure()
figure()操作就是创建或者调用画图板,缺省情况下系统会创建figure(1)作为画图板。使用时遵循就近原则,所有画图操作是在最近一次调用的画图板上实现。
axes() VS subplot()
pyplot.axes([x, y, w, h])是用来在画图板上确认图形区的位置和大小的函数,x,y表示图形区左下角相对于画图板的坐标,w,h表示图形区的宽高。(缺省时该操作在figure(1)上操作)
pyplot.subplot(abc)本质也是用来确认图形区在画图板上位置大小的函数,区别是该函数将画图板按a行b列等分,然后逐行编号,并选择编号为c的区域作为图形区用来绘图。这是一个axes()操作的高级封装,方便用户使用。subplot(233)表示2行3列的第3个位置(即,第1行第三个区域)
同时,pyplot.show()实际展示的区域是画图板上所有图形区的最小包围区,不是整个画图板,即如果仅仅调用了subplot(224)结果只展示右下角的4号区域,而不是1、2、3、4都展示,因此会存在一定的错觉。
axes() VS axis()
axes([x, y, w, h])用来设定图形区;
axis([x_left, x_right, y_bottom, y_top])是用来设置所绘制图形的视窗大小的,表示直接展示的图形是需要满足参数中范围的值,直观表现是绘图区实际展示的坐标范围。
注:axis作用的图形区依旧遵守就近原则。
subplot()VS plot()
subplot用来生成图形区;
plot是实际使用的绘图函数,类似的函数还有hist等,plot操作遵守就近原则,即作用在最近一次使用的图形区上。
官网:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.html
到此这篇关于matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)的文章就介绍到这了,更多相关matplotlib plt.rcParams、matshow内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
使用Matplotlib绘制的图表的默认坐标轴是在左下角的,这样对于一些函数的显示不是非常方便,要改变坐标轴的默认显示方式主要要使用gca()方法plt.gca
在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等在matplotlib中包含了
matplotlib默认根据数据系列自动缩放坐标轴范围。pyplot模块中的autoscale函数可以切换是否自动缩放坐标轴范围,xlim()和ylim()函数
如下所示:plt.rcParams['savefig.dpi']=300#图片像素plt.rcParams['figure.dpi']=300#分辨率为了记住不
本文实例讲述了Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息。分享给大家供大家参考,具体如下:进行图像绘制有时候需要设定坐标轴以及图像