您好,登錄后才能下訂單哦!
小編給大家分享一下怎么使用python的matplotlib畫軌道,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
1、簡單易用,與C/C++、Java、C# 等傳統語言相比,Python對代碼格式的要求沒有那么嚴格;2、Python屬于開源的,所有人都可以看到源代碼,并且可以被移植在許多平臺上使用;3、Python面向對象,能夠支持面向過程編程,也支持面向對象編程;4、Python是一種解釋性語言,Python寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序;5、Python功能強大,擁有的模塊眾多,基本能夠實現所有的常見功能。
如下所示:
import numpy as np import matplotlib.pyplot as plt import matplotlib.patches as mpatches from scipy import stats fig = plt.figure() ax = fig.add_subplot(111, xlim=(0, 10), ylim=(-4, 4)) sx=0;sy=0;r=1.5 ; circle = mpatches.Circle((sx,sy),r,ec='b',fc = 'b',alpha=0.6) ax.add_patch(circle) n = 5 alpha = np.linspace(-np.pi/2,np.pi/2,100) for i in range(1,n+1): a = (i+1)*2 b = (i+1) plt.plot(a*np.cos(alpha),b*np.sin(alpha)) if i <= 3: ax.text(a+1,0,'layer.%d'%(i-1),ha='center',va='center') rate = 3 Jnum = 100 for i in range(Jnum): data = stats.poisson.rvs(mu = rate, loc = 0 , size = 1) while data == 0: data = stats.poisson.rvs(mu = rate, loc = 0 , size = 1) data = data[0] r = np.random.random() beta = (np.random.random()-0.5)*np.pi print beta data += r a = (data+1)*2*np.cos(beta) b = (data+1)*np.sin(beta) ax.scatter(a,b, c='y',edgecolors = 'y') xx = [3.5 , 6.8,6.8] yy = [-1.8,0.9,3.1] pp = [1.00,0.85,0.75] rota = [-45,0,0] for i in range(3): plt.plot((1.5,xx[i]) , (0,yy[i]) , 'r') ax.scatter(xx[i],yy[i], c='y',edgecolors = 'b') ax.text(xx[i] , yy[i] , 'probability %lf'%pp[i] , ha = 'center' ) tx = np.linspace(0,10,10) ty = np.linspace(-4,-4,10) ax.set_xticks(tx) ax.set_xticklabels(('')) ax.set_yticks(ty) ax.set_yticklabels(('')) #plt.axis('off') plt.show()
看完了這篇文章,相信你對“怎么使用python的matplotlib畫軌道”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。