python科学计算学习二:matplotlib绘图(极坐标 3D绘图等)(3)

本文详细介绍了使用matplotlib进行科学计算中的绘图技巧,包括对数坐标图的创建、极坐标图像绘制、柱状图、散点图以及3D图像的生成。通过实例代码,展示了matplotlib在科研绘图中的应用,帮助读者掌握matplotlib的基本操作。
摘要由CSDN通过智能技术生成

    博客地址:http://blog.csdn.net/ikerpeng/article/details/20523679

    首先补充以下:7种颜色 r g b y m c k (红,绿,蓝,黄,品红,青,黑)


    在科研的过程中,坐标系中的XY不一定就是等尺度的。例如在声波中对Y轴取对数。肆意我们也必须知道这种坐标系如何画出来的。

    1,对数坐标图

    有3个函数可以实现这种功能,分别是:semilogx(),semilogy(),loglog()。它们分别表示对X轴,Y轴,XY轴取对数。下面在一个2*2的figure里面来比较这四个子图(还有plot())。

  1 import numpy as np
  2 import matplotlib.pyplot as plt
  3 w=np.linspace(0.1,1000,1000)
  4 p=np.abs(1/(1+0.1j*w))
  5 
  6 plt.subplot(221)
  7 plt.plot(w,p,lw=2)
  8 plt.xlabel('X')
  9 plt.ylabel('y')
 10 
 11 
 12 plt.subplot(222)
 13 plt.semilogx(w,p,lw=2)
 14 plt.ylim(0,1.5)
 15 plt.xlabel('log(X)')
 16 plt.ylabel('y')
 17 
 18 plt.subplot(223)
 19 plt.semilogy(w,p,lw=2)
 20 plt.ylim(0,1.5)
 21 plt.xlabel('x')
 22 plt.xlabel('log(y)')
 23 
 24 plt.subplot(224)
 25 plt.loglog(w,p,lw=2)
 26 plt.ylim(0,1.5)
 27 plt.xlabel('log(x)')
 28 plt.xlabel('log(y)')
 29 plt.show()
如上面的代码所示,对一个低通滤波器函数绘图。得到四个不同坐标尺度的图像。如下图所示:

    2,极坐标图像
    极坐标系中的点由一个夹角和一段相对于中心位置的距离来表示。其实在plot()函数里面本来就有一个polar的属性,让他为True就行了。下面绘制一个极坐标图像:

  1 import numpy as np
  2 import matplotlib.pyplot as plt
  3 
  4 theta=np.arange(0,2*np.pi,0.02)
  5 
  6 plt.subplot(121,polar=True)
  7 plt.plot(theta,2*np.ones_like(theta),lw=2)
  8 plt.plot(theta,theta/6,'--',lw=2)
  9 
 10 plt.subplot(122,polar=True)
 11 plt.plot(theta,np.cos(5*theta),'--',lw=2)
 12 plt.plot(theta,2*np.cos(4*theta),lw=2)
 13 plt.rgrids(np.arange(0.5,2,0.5),angle=45)
 14 plt.thetagrids([0,45,90])
 15 
 16 plt.show()
~                

整个代码很好理解,在后面的13,14行没见过。第一个plt.rgrids(np.arange(0.5,2,0.5),angle=45) 表示绘制半径为0.5 1.0 1.5的三个同心圆,同时将这些半径的值标记在45度位置的那个直径上面。plt.thetagrids([0,45,90]) 表示的是在theta为0,45,90度的位置上标记上度数。得到的图像是:



评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值