Python学习手册(三)----matplotlib常用函数

Python学习手册:

这个系列的博文是从北大tensorflow学习笔记里截出来的专门学python高级用法的日志,有在学的零基础可以看,想提高python的也可以
也欢迎大家去看tf系列的代码,我的博文里会更这个系列

1.python语法:列表推导式

2.numpy 一些函数

3.matplotlib 一些函数

[4.matplotlib 图例(legend)]
()


matplotlib 基本函数的用法

1.plt.figure()

作用:
用来画图,能自定义画布大小

figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True)
  • num:图像编号或名称,数字为编号 ,字符串为名称
  • figsize:指定figure的宽和高,单位为英寸;
  • dpi参数指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80 1英寸等于2.5cm,A4纸是 21*30cm的纸张
  • facecolor:背景颜色
  • edgecolor:边框颜色
  • frameon:是否显示边框

2)例子:

import matplotlib.pyplot as plt
创建自定义图像
fig=plt.figure(figsize=(4,3),facecolor=‘blue’)
plt.show()

2.plt.plot(x,y)

plt.plot(x,y,format_string,**kwargs) 

x轴数据,y轴数据,format_string控制曲线的格式字串

format_string 由颜色字符,风格字符,和标记字符
在这里插入图片描述

3.plt.subplot(222)

将figure设置的画布大小分成几个部分,
参数‘221’表示2(row)x2(colu),即将画布分成2x2,两行两列的4块区域,
1表示选择图形输出的区域在第一块,
图形输出区域参数必须在“行x列”范围 ,此处必须在1和2之间选择——如果参数设置为subplot(111),则表示画布整个输出,不分割成小块区域,图形直接输出在整块画布上

例子:
plt.subplot(222)
plt.plot(y,xx) #在2x2画布中第二块区域输出图形
plt.show()
plt.subplot(223) #在2x2画布中第三块区域输出图形
plt.plot(y,xx)
plt.subplot(224) # 在在2x2画布中第四块区域输出图形
plt.plot(y,xx)

4. plt.xlim设置x轴或者y轴刻度范围

plt.xlim(0,1000)  #  设置x轴刻度范围,从0~1000         #lim为极限,范围
plt.ylim(0,20)   # 设置y轴刻度的范围,从0~20

5. plt.show

plt.show

显示图片用的

6.ax2.set_title(‘xxx’)设置标题,画图

#产生[1,2,3,...,9]的序列
x = np.arange(1,10)
y = x
fig = plt.figure()
ax1 = fig.add_subplot(221)


#设置标题
ax1.set_title('Scatter Plot1')
plt.xlabel('M')
plt.ylabel('N')
ax2 = fig.add_subplot(222)
ax2.set_title('Scatter Plot2clf')
#设置X轴标签
plt.xlabel('X')           #设置X/Y轴标签是在对应的figure后进行操作才对应到该figure
#设置Y轴标签
plt.ylabel('Y')
#画散点图
ax1.scatter(x,y,c = 'r',marker = 'o')          #可以看出画散点图是在对figure进行操作
ax2.scatter(x,y,c = 'b',marker = 'x')
#设置图标
plt.legend('show picture x1 ')
#显示所画的图

plt.show()

结果
在这里插入图片描述

高阶函数

1 plt.scatter

plt.scatter(X[:,0], X[:,1], c=np.squeeze(Y_c)) 

scatter有几个常用参数
x,y 表示点的坐标
c= 表示每个点的颜色,这里是传进去一个数组,表示RGB颜色数组
s= 表示点的个数(这里默认了)

2 plt.contour

plt.contour(xx, yy, probs, levels=[.5])

contour:轮廓,等高线。
绘制等高线用的

C = plt.contour(X, Y, f(X, Y),  8, colors='black')
	# 8代表等高线的密集程度,这里被分为10个部分。如果是0,则图像被一分为二。
	# 可以将其设置为 20观察变化;
# 等高线之间的颜色填充,可选

猜你喜欢

转载自blog.csdn.net/qq_35307005/article/details/87520396