日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯網營銷解決方案
Python編程語言中調用Matlab繪制保存數據的方案

在Python編程語言的應用的過程中,如果你想通過Python編程語言調用Matlab繪制保存數據,你可以參考我們以下的文章對其有一個詳細的了解,以下是文章的的主要內容。望你能有所收獲。

調用Matlab繪制保存數據

最近我做實驗時需要把得到的數據用Matlab繪圖并保存下來。一個小問題是原始的數據文件中不僅有數據還有一些注釋的部分(注釋部分在數據之前,每行以#開頭)。直接用Matlab繪圖比較麻煩,因為不能直接處理數據,所以或者要把數據單獨提取出來,另存成一個文件。

或者就要用Matlab寫一個過濾文本的程序。不過Matlab處理文本并不是它的強項。 所以這兩個辦法我都不很滿意。Python再次給我提供了解決的方案。一方面Python編程語言具有很強的文本處理能力,另一方面Python對Matlab這種交互式的程序提供了直接調用的的途徑,所以寫一個Python腳本來完成這一任務無疑是比較合適的。下面是實現的代碼:

     
     
     
  1. import os  
  2. import string  
  3. 1filepath = "d:\\\\exp\\\\chgeff_lar_1" 
  4. 2filename="chgeff_lar_1" 
  5. 3id = open(filepath, 'r')  
  6. 4lines = fid.readlines()  
  7. 5fid.close()  
  8. 6x = []; y = []  
  9. 7for line in lines:  
  10. 8if line[0]=="#" or len(line)==1:  
  11. 9continue  
  12. 10else:  
  13. 11xval, yval = string.split(line)  
  14. 12x.append(float(xval))  
  15. 13y.append(float(yval))  
  16. 14id = open(filename+'.m', 'w')  
  17. 15fid.write("""  
  18. 16x = %s  
  19. 17y = %s  
  20. 18plot(x, y)  
  21. 19xlabel('Particle diameter (nm)')  
  22. 20ylabel('Charging efficiency')  
  23. 21print -deps  %s.eps  
  24. 22pause(10)  
  25. 23"""  %  (x, y, filename))  
  26. 24fid.write("exit")  
  27. 25fid.close()  
  28. 26cmd = "d:\\\\matlab6p5\\\\bin\\\\win32\\\\matlab.exe -nodesktop -r  " + filename  
  29. 27os.system(cmd)  

以上6-13句實現兩個功能,一是過濾文本(8-9句),通過檢查每一行的第一個字符及行的長度,把注釋行和空行給去掉。二是把讀到的每一行數據自動分配到兩個變量x,y中(10-13句)。然后Python把一組Matlab代碼(16-24句)寫到文件filename.m中。最后利用os模塊的system函數調用Matlab繪圖及保存(26-27句)。從這個例子也可以看出,Python編程語言和其他語言協同工作的能力是比較強的。

【編輯推薦】

  1. Python正則表達式十種相關的匹配方法
  2. Python字符串替換如何才能進行字符的拆分
  3. Python文本亂碼發(fā)生時的解決方案
  4. Python編程語言總體性能優(yōu)點評測
  5. Python編程語言具有相當高的適應能力

 


本文題目:Python編程語言中調用Matlab繪制保存數據的方案
當前網址:http://m.5511xx.com/article/cdsggdd.html