當前位置:編程學習大全網 - 編程語言 - Python之神奇的繪圖庫matplotlib

Python之神奇的繪圖庫matplotlib

matplotlib是Python最著名的繪圖庫,它提供了壹整套和matlab相似的命令API,十分適合交互式地進行制圖。本文將以例子的形式分析matplot中支持的,分析中常用的幾種圖。其中包括填充圖、散點圖(scatter plots)、. 條形圖(bar plots)、等高線圖(contour plots)、 點陣圖和3D圖,下面來壹起看看詳細的介紹:

壹、填充圖

參考代碼

簡要分析

這裏主要是用到了fill_between函數。這個函數很好理解,就是傳入x軸的數組和需要填充的兩個y軸數組;然後傳入填充的範圍,用where=來確定填充的區域;最後可以加上填充顏色啦,透明度之類修飾的參數。

相關推薦:《Python教程》

效果圖

二、散點圖(scatter plots)

參考代碼

簡要分析

1.首先介紹壹下numpy 的normal函數,很明顯,這是生成正態分布的函數。這個函數接受三個參數,分別表示正態分布的平均值,標準差,還有就是生成數組的長度。很好記。

2.然後是arctan2函數,這個函數接受兩個參數,分別表示y數組和x數組,然後返回對應的arctan(y/x)的值,結果是弧度制。

3.接下來用到了繪制散點圖的scatter方法,首先當然是傳入x和y數組,接著s參數表示scale,即散點的大小;c參數表示color,我給他傳的是根據角度劃分的壹個數組,對應的就是每壹個點的顏色(雖然不知道是怎麽對應的,不過好像是壹個根據數組內其他元素進行的相對的轉換,這裏不重要了,反正相同的顏色賦壹樣的值就好了);最後是alpha參數,表示點的透明度。scatter函數的高級用法可以參見官方文檔scatter函數或者help文檔,最後設置下坐標範圍就好了。

效果圖

三、等高線圖(contour plots)

參考代碼

簡要分析

1.首先要明確等高線圖是壹個三維立體圖,所以我們要建立壹個二元函數f,值由兩個參數控制,(註意,這兩個參數都應該是矩陣)。

2.然後我們需要用numpy的meshgrid函數生成壹個三維網格,即,x軸由第壹個參數指定,y軸由第二個參數指定。並返回兩個增維後的矩陣,今後就用這兩個矩陣來生成圖像。

3.接著就用到coutourf函數了,所謂contourf,大概就是contour fill的意思吧,只填充,不描邊;這個函數主要是接受三個參數,分別是之前生成的x、y矩陣和函數值;接著是壹個整數,大概就是表示等高線的密度了,有默認值;然後就是透明度和配色問題了,cmap的配色方案這裏不多研究。

4.隨後就是contour函數了,很明顯,這個函數是用來描線的。用法可以類似的推出來,不解釋了,需要註意的是他返回壹個對象,這個對象壹般要保留下來個供後續的加工細化。

5.最後就是用clabel函數來在等高線圖上表示高度了,傳入之前的那個contour對象;然後是inline屬性,這個表示是否清除數字下面的那條線,為了美觀當然是清除了,而且默認的也是1;再就是指定線的寬度了。

效果圖

  • 上一篇:少兒編程和機器人編程有區別嗎?
  • 下一篇:金貢:我不會退役,22歲以上的職業選手都有誰?
  • copyright 2024編程學習大全網