2016-10-01 155 views
1

程序pastebinned下面生成的曲線圖,看起來像: Original plot 引擎收錄http://pastebin.com/wNgAG6K9的Python - 如何繪製「邊界邊緣」到2D圖

基本上,該程序求解AA的方程並繪製出提供的值AA> 0和AA =/= 0。使用來自3個陣列(x,yz(行57-59))的數據使用pcolormesh繪製數據。

我想要做什麼:

我想繪製邊界,解決方案從零(黑)四處一行非零(黃/綠色),請參閱下面的情節。什麼是最明智的方法呢?

I.e.紅色線(在MS油漆粗製濫造完成)

enter image description here

進一步的信息:我需要能夠存儲紅色虛線邊界值,這樣我可以繪製紅色虛線邊界條件作出其它2D圖來自真實/測量/非理論數據。

請隨時索取更多信息。

回答

1

沒有看到您的數據,我會建議先嚐試使用matplotlib的內部算法來繪製contour行對應的零級別。這很簡單,但可能會發生這種情況的插值看起來不夠好(我不知道它是否可以在輪廓線中找到尖銳的峯值)。布丁的證明是在進食:

plt.contour(x,y,z,[0],colors='r',linewidths=2,linestyles='dashed') 

如果沒有足夠的,你可能不得不求助於圖像處理方法來查找數據的邊界(把它轉換成二進制後)。

+0

感謝您的想法,但不幸的是這不會工作。我希望能夠稍後將紅色虛線邊界線應用於由實際數據構成的另一個圖形。紅色虛線數據因此需要存儲在某種陣列中,以便稍後繪製另一個二維繪圖。這意味着在使用圖像處理時也沒有用處。 – 8765674

+1

@ 8765674可以提取輪廓線數據。你必須弄髒你的手,[但它不是太難](http://stackoverflow.com/questions/25873681/matplotlib-contour-plot-labels-overlap-axes/35615476#35615476)(或看[這其他(我的答案](http://stackoverflow.com/questions/35633421/how-to-remove-omit-smaller-contour-lines-using-matplotlib/35664089#35664089)) –

+1

我會刺到這個現在。謝謝@Andras Deak – 8765674