本文目錄一覽:
- 1、理工科書本上的波形圖是如何繪製的?
- 2、請問,如何實現圖中波形,MATLAB或者Python或者C語言
- 3、python畫正餘弦函數圖像?
- 4、安裝pythonxy時安裝哪些
- 5、怎麼用python的numpy模塊和matplotlib模塊把下面這些文本做一個3d的數據建模?
理工科書本上的波形圖是如何繪製的?
有具體參數的情況下一般是模擬輸出的圖像。如電機電流,電壓,轉矩等變化量。如果是說明原理的圖形,為了清晰起見,是用visio等繪圖工具按照實際情況畫的。如無窮大電源三相短路的電流變化情況。用數學軟體比如matlab, python 可以模擬出在一定的時間的變化 ,只要你設定好區間值。可以下載一個python(免費)畫sin 或cos ,應該是模擬出的波形,個人接觸過的只有simulink模擬、Pscad模擬等幾款,搭建電路並設置必要的元件參數後運行模擬即可得到波形。流程圖可以用visio軟體畫,梯形圖是PLC編程環境里有的,截屏就行了。
請問,如何實現圖中波形,MATLAB或者Python或者C語言
1.準備好C語言程序,清楚C語言的入口函數
2.編寫mexfunction函數。mexfunction函數為C語言與MATLAB語言的介面函數。調用實例在mylinedetect.c文件中.在MATLAB中調用mex指令編譯相關文件,將C語言編譯為MEX文件。
3.編譯完成後,生成mylinedetect.mexw32或mylinedetect.mexw64文件,此文件即mex文件,用於MATLAB與C語言介面函數.
4.編譯完成之後,編寫MATLAB函數,調用MEX文件。以MEX文件的形式調用編譯完成的C語言函數[o1,o2]=mylinedetect(double(X).’);……
5.輸出結果,上述linedetect函數完成圖像中直線檢測功能,帶入MATLAB中調用後形成結果。
python畫正餘弦函數圖像?
用python怎樣畫出如題所示的正餘弦函數圖像? 如此編寫代碼,使其中兩個軸、圖例、刻度,大小,LaTex公式等要素與原圖一致,需要用到的代碼如下,沒有縮進:
#-*-codeing:utf-8;-*-
from matplotlib import pyplot as plt
import numpy as np
a=np.linspace(0,360,980)
b=np.sin(a/180*np.pi)
c=np.cos(a/180*np.pi)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xlim([0, 360])
ax.plot(a,b,label=r”$y=\sin(\theta)$”)
ax.plot(a,c,label=r”$y=\cos(\theta)$”)
ax.grid(True)
ax.set_ylabel(r”$y$”)
ax.set_xlabel(r”$\theta$”)
plt.xticks(np.arange(0,360+1,45))
plt.title(“Sine Cosine Waves”)
plt.legend()
plt.savefig(“SinCosWaveDegFont.jpg”)
plt.show()
代碼運行show的窗口圖
代碼的截圖
代碼輸出的文件的圖
安裝pythonxy時安裝哪些
目前python除了在 Windows 下官方提供的安裝版外,還有:
ActivePython,這個與官方版本的區別在於提供了額外的庫和文檔,並且自動設置了PATH環境變數。
Python(x,y)是一個基於python的科學計算軟體包,收集了眾多的函數庫以及文檔、教程,並配備了可視化的程序界面和集成開發環境,非常方便科研人員使用。
Python(x,y))目前的穩定版本為2.7.2.3,包含集成開發環境Eclipse和python開發插件pydev、數據互動式編輯和可視化工具spyder、基礎數學庫numpy和高級數學庫scipy、3D可視化工具集MayaVi、python界面開發庫PyQt、python與C/C++混合編譯器SWIG,以及其他多種數學軟體庫,並配備了豐富齊全的幫助文檔。總的來說是很用心維護的一個發行版,建議安裝這個版本。
科學計算最基礎的工具庫, NumPy, SciPy. 二維繪圖以及三維可視化庫, matplotlib, , Chaco, Mayavi. 程序和界面開發, Traits, TraitsUI. 與Matlab相比, Python最大的優點是完全免費, 其次在文件管理, 界面設計和網路通信方面Python都有著豐富的擴展庫.
Python集成軟體包: Python(x,y), 版本號與它所使用的Python版本號相同.集成了許多有用的庫。
安裝時首先要卸載python.
安裝的時候,選擇Full(安全安裝):
將Python(x,y)的安裝路徑改為「c:\pythonxy」。否則Python將可能無法正確調用某些擴展模塊。(有很多路徑要選,我把最開始的路徑改在 了E盤,因為C盤空間不夠)。
裝python的過程中要會修改很多註冊表, 需要做很多允許操作. 那麼暫時退出防火牆軟體, 要麼就坐在電腦前候著:-)
c:\python27 Python 2.7.2.1的安裝路徑, 所有擴展庫都可以在它的子目錄」Lib\site-packages」下找到
c:\pythonxy\doc 眾多擴展庫的說明文檔和演示程序
c:\pythonxy\swig 自動生成擴展模塊介面的工具, 用C語言編寫擴展模塊時會用到它
啟動界面可以看到一些配置選項和當前版本信息.
Python(x,y)運行後的界面:
為了和numpy, scipy等社區的推薦的標準導入方式一致,請點擊按鈕Startup script,然後在打開的文件夾中添加一個名為numpy.py的文件,編輯此文件,添加以下幾行推薦的導入
import numpy as np
import scipy as sp
import pylab as pl
此後運行IPython(x,y)的時候請記著要選擇numpy.py為啟動腳本。
如果要使用pylab,TraitsUI等在shell中和圖形界面進行交互的話,需要選擇帶-wthread參數的選項(-pylab也可以)。圖1.3是一個用pylab繪製sin波形圖的例子:(在ipython qt中)
pythonxy自動2.7以後,移除eclipse了。因為eclipse太大,移除了.如果是高版本的pythonxy,你可以單獨安裝eclipse。
怎麼用python的numpy模塊和matplotlib模塊把下面這些文本做一個3d的數據建模?
你好,你現在那個圖是一個連續的波形圖,因為你提供的是具體的數據,沒有xyz之間的關係公式,所以只能是畫一個散點圖。假設你已經將xyz都讀進來了,下面是一個畫三d散點圖的例子。
from mpl_toolkits.mplot3d.axes3d import Axes3D
#繪製3維的散點圖
x = np.random.randint(0,10,size=100) #用你X的數據來代替
y = np.random.randint(-20,20,size=100) #用你Y的數據來代替
z = np.random.randint(0,30,size=100) #用你的Z的數據來代替
# 此處fig是二維
fig = plt.figure()
# 將二維轉化為三維
axes3d = Axes3D(fig)
# axes3d.scatter3D(x,y,z)
# 效果相同
axes3d.scatter(x,y,z)
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/242152.html