Matplotlib常用命令汇总

来源:互联网 发布:字体下载for mac 编辑:程序博客网 时间:2024/05/16 14:22

读入ACSII文本数据

data = np.loadtxt(‘data.dat’)raw_z = data[:,2]

将数据列转换为数据矩阵

mat_z = raw_z.reshape(ny, nx)

创建指定大小的绘图窗口,窗口无框(所绘图形对象大小等于最终图片对象的大小)

fig = plt.figure(figsize=(16,6), frameon = False )

设置背景透明度,0为全透明,1为不透明

fig.patch.set_alpha(0.5)

生成一个坐标框,对应一个图形对象,不显示坐标轴,但刻度仍在

ax = fig.add_subplot(111, frameon=False)

将矩阵mat_z以image的形式显示出来,双线性差值,灰度图,原点在下方,坐标范围定义为extent

plt.imshow(mat_z, interpolation=’bilinear’, cmap=cm.gray,origin=’lower’, extent=[-2,2,0,0.5])

将数据以二维曲线形式显示,语法与MATLAB类似

plt.plot( t, Ez, ‘r–’, t, Az/50, ‘b–’ );

以等高线形式显示

levels = arange(-3, 2, 0.2)cs = plt.contour(mat_x, mat_y, mat_z, levels,linewidths=np.arange(0, 3, .5),colors=(‘r’, ‘green’, ‘blue’, (1,1,0), ‘#afeeee’, ’0.5′))

以等高线区间色块形式显示

cset1 = plt.contourf(mat_x, mat_y, mat_z, levels,cmap=cm.get_cmap(‘jet’, len(levels)-1))

以对数阶可视化数据

cset1 = plt.contourf(arry_re, arry_im, arry_hi, 100, cmap=cm.jet, locator=ticker.LogLocator())

显示颜色条

colorbar(cset1)

颜色条的标示选项

plt.clabel(cset1, fontsize=9, inline=1)

以散点形式显示, s为点大小,c代表颜色

plt.scatter(x, y, s=dr_pt*10, c=dr_pt);

选择是否显示刻度值:x轴上,1为下,2为上;y轴上,1为左,2为右;

for tick in ax.xaxis.get_major_ticks():    tick.label1On = True    tick.label2On = Falsefor tick in ax.yaxis.get_major_ticks():    tick.label1On = False    tick.label2On = False

选择如何显示刻度

ax.xaxis.set_ticks_position(‘none’)ax.yaxis.set_ticks_position(‘right’)

完全自定义坐标轴刻度及刻度值

ax.set_xticks([-250, -200, -150, -100, -50, 0, 50, 100, 150, 200])ax.set_xticklabels([‘-250′, ”, ‘-150′, ”, ‘-50′, ”, ’50’, ”, ‘150’, ”])ax.set_yticks([-40, -20, 0, 20, 40, 60, 80])ax.set_yticklabels([”, ”, ”, ”, ”, ”, ”])

分别设置x轴和y轴上刻度值的字体大小

for tick in ax.xaxis.get_major_ticks():tick.label1.set_fontsize(18)for tick in ax.yaxis.get_major_ticks():tick.label1.set_fontsize(18)

这也可以设置刻度值字体大小

matplotlib.rc(‘xtick’, labelsize=20)matplotlib.rc(‘ytick’, labelsize=20)

显示标题

plt.title(‘title’)

显示坐标轴标示

plt.xlabel(‘x’)plt.ylabel(‘y’)

显示范围

xlim(-2, 2)ylim(0, 0.5)

映射色深范围

clim(-5.4, -1.4)

显示网格

grid(True)

直接保存文件,文件名后缀自动决定保存格式

savefig(‘/home/timy/Desktop/fig/’+file_name+’.png’)

显示图片

plt.show()

matplotlib也可绘制三维图像
mplot3d是matplotlib的一个工具箱,执行效率不是很高,很多在2D中可用的选项在3D模式下无效,希望继续开发,完善这个工具箱
直接参考这个: http://www.scipy.org/Cookbook/Matplotlib/mplot3D

建立三维显示坐标框

ax = p3.Axes3D(fig)

以三维散点形式显示

ax.scatter3D( data_pz_0, data_px_0, data_pz, s=1, c=data_pz )

设置观察角度

ax.view_init(60, 315)
0 0