1 Star 0 Fork 0

wangjinlong / pylab_learn

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

#---例子 from pylab import * #这条命令可以直接使用MATLAB中的大部分绘图命令,#Matplotlib 演示" '''import numpy as np from matplotlib import pyplot as plt 如果通过这种方式,绘图时需要使用plt.plot ''' plt.rcParams['font.family']=['Arial Unicode MS'] #添加中文支持 'Source Han Sans SC', 'Songti SC', 'HeitiTC','Source Han Sans SC', '

#2d二维图,曲线图 ''' n=300; x=linspace(0,10,n); #linspace(-pi, pi, 256,endpoint=True) #保留终点 y=sin(x) xlabel("x轴",loc='left') ylabel('|E|',rotation=90) #可以旋转ylabel title("Matplotlib 演示") #增加标题 plot(x,y,linestyle = 'dotted', color='red',linewidth=1,marker='p',markersize=8,mec='black',label='正弦') z=cos(x); plot(x,z,label='cos余弦') #绘制多条曲线,增加一条plot即可 grid(b=None, which='major', axis='both') #画网格线,help(matplotlib.pyplot.grid) legend(loc='best', fontsize=16) #loc用于调整图例的位置可以help(legend)参考,如legend('upper right'), fontsize字体大小, 由于plot中已经加入label关键词,故可以直接加入图例 #xlim(-pi,pi);ylim(-1,1) #设置取值范围 xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi],[r'$-\pi$', r'$-\pi/2$', r'$0$', r'$+\pi/2$', r'$+\pi$']) yticks([-1, 0, +1],[r'$-1$', r'$0$', r'$+1$']) #设置自定义刻度 text(0,0,'wjl',fontsize=20,alpha=0.5) #自定义文本和透明度 savefig("sin.pdf",bbox_inches='tight') # 保存图片 #或者加上pad_inches = 0 #通过在savefig中设置bbox_inches="tight"来删除空白区域填充 #savefig("exercice_2.png",dpi=72) # 以分辨率 72 来保存图片 show() #在屏幕上显示 '''

#---2d 二维直方图 ''' a=array([22,87,5,43,56,73,55,54,11,20,51,5,79,31,27]) hist(a,bins=[0,20,40,60,80,100]) #hist 频率统计直方图 show() '''

#---散点图 ''' seed(19680801) #随机数生成器的种子 N = 50 x = rand(N);y = rand(N) colors = rand(N) area = (30 * rand(N))**2 # 0 to 15 point 半径 scatter(x, y, s=area, c=colors, alpha=0.5,cmap='jet') # c设置颜色, alpha设置透明度,cmap='rainbow','hot','jet','Greys' colorbar() #显示颜色条 show() '''

#---绘制饼图 ''' y = np.array([35, 25, 25, 15]) plt.pie(y, labels=['A','B','C','D'], # 设置饼图标签 colors=["#d5695d", "#5d8ca8", "#65a479", "#a564c9"], # 设置饼图颜色 explode=(0, 0.2, 0, 0), # 第二部分突出显示,值越大,距离中心越远 autopct='%.2f%%', # 格式化输出百分比 ) plt.title("RUNOOB Pie Test") plt.show() '''

#3d 三维曲线图 ''' n=300; x=linspace(0,10,n); y=x; z= exp(-y)*cos(x) #ax1=axes(projection='3d'); ax1.plot3D(x,y,z) plt.axes(projection='3d');plt.plot(x,y,z) #或者这样 xlabel('x') ylabel('y') show() '''

#---三维曲面图 ''' n=300; x=linspace(0,10,n); y=x; X,Y=meshgrid(x,y) E_tm=1; alpha=1; k_tx=1.5; Z= E_tm* exp(-alpha*Y)cos(k_txX) ax1=axes(projection='3d'); ax1.plot_surface(X,Y,Z,cmap='jet') ax1.contour(X,Y,Z,zdir='z', offset=-2,cmap="rainbow") #生成z方向投影,投到x-y平面 xlabel('x轴 (传播方向)') ylabel('z') savefig('bmb-表面波.pdf',bbox_inches='tight') show() '''

#--三维曲面2 ''' #定义坐标轴 fig4 = plt.figure('f2') #图形窗口的名字 ax4 = plt.axes(projection='3d') #生成三维数据 xx = arange(-5,5,0.1) yy = arange(-5,5,0.1) X, Y = meshgrid(xx, yy) Z = sin(sqrt(X2+Y2)) #作图 ax4.plot_surface(X,Y,Z,alpha=0.99,cmap='winter') #生成表面, alpha 用于控制透明度 ax4.contour(X,Y,Z,zdir='z', offset=-3,cmap="rainbow") #生成z方向投影,投到x-y平面 #ax4.contour(X,Y,Z,zdir='x', offset=-6,cmap="rainbow") #生成x方向投影,投到y-z平面 #ax4.contour(X,Y,Z,zdir='y', offset=6,cmap="rainbow") #生成y方向投影,投到x-z平面 ax4.contourf(X,Y,Z,zdir='y', offset=6,cmap="rainbow") #生成y方向投影填充,投到x-z平面,contourf()函数 #设定显示范围 ax4.set_xlabel('X') ax4.set_xlim(-6, 4) #拉开坐标轴范围显示投影 ax4.set_ylabel('Y') ax4.set_ylim(-4, 6) ax4.set_zlabel('Z') ax4.set_zlim(-3, 3) plt.show() '''

#--绘制嵌入图 ''' axes([0.1,0.1,.8,.8]) xticks([]), yticks([]) text(0.6,0.6, 'axes([0.1,0.1,.8,.8])',ha='center',va='center',size=20,alpha=.5) axes([0.2,0.2,.3,.3]) xticks([]), yticks([]) text(0.5,0.5, 'axes([0.2,0.2,.3,.3])',ha='center',va='center',size=16,alpha=.5) #plt.savefig("../figures/axes.png",dpi=64) show() '''

#等高线图 ''' def f(x,y): return (1-x/2+x5+y3)*np.exp(-x2-y2) n = 256 x = np.linspace(-3,3,n) y = np.linspace(-3,3,n) X,Y = np.meshgrid(x,y) contourf(X, Y, f(X,Y), 8, alpha=.75, cmap='jet') C = contour(X, Y, f(X,Y), 8, colors='black') show() '''

空文件

简介

暂无描述 展开 收起
Python
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/wangjl580/pylab_learn.git
git@gitee.com:wangjl580/pylab_learn.git
wangjl580
pylab_learn
pylab_learn
master

搜索帮助