最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

用matplotlib畫等高線圖詳解

 更新時間:2017年12月14日 16:04:59   作者:dreampursuer  
這篇文章主要介紹了用matplotlib畫等高線圖詳解,具有一定借鑒價值,需要的朋友可以參考下。

等高線圖是在地理課中講述山峰山谷時繪制的圖形,在機器學(xué)習(xí)中也會被用在繪制梯度下降算法的圖形中。

因為等高線的圖有三個信息:x,y以及x,y所對應(yīng)的高度值。

這個高度值的計算我們用一個函數(shù)來表述:

 計算x,y坐標(biāo)對應(yīng)的高度值
def f(x, y):
 return (1-x/2+x**5+y**3) * np.exp(-x**2-y**2)

這個函數(shù)看起來挺復(fù)雜的,但我們這里只是為了能夠獲得一個高度值,因此其中函數(shù)代表什么意義不用關(guān)心,只要知道輸入一個x,y,輸出一個高度值就可以了。

要畫出等高線,核心函數(shù)是plt.contourf(),但在這個函數(shù)中輸入的參數(shù)是x,y對應(yīng)的網(wǎng)格數(shù)據(jù)以及此網(wǎng)格對應(yīng)的高度值,因此還需要調(diào)用np.meshgrid(x,y)把x,y值轉(zhuǎn)換成網(wǎng)格數(shù)據(jù)才行,這樣完整的代碼如下:

畫等高線的代碼如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# 計算x,y坐標(biāo)對應(yīng)的高度值
def f(x, y):
 return (1-x/2+x**5+y**3) * np.exp(-x**2-y**2)

# 生成x,y的數(shù)據(jù)
n = 256
x = np.linspace(-3, 3, n)
y = np.linspace(-3, 3, n)

# 把x,y數(shù)據(jù)生成mesh網(wǎng)格狀的數(shù)據(jù),因為等高線的顯示是在網(wǎng)格的基礎(chǔ)上添加上高度值
X, Y = np.meshgrid(x, y)

# 填充等高線
plt.contourf(X, Y, f(X, Y))
# 顯示圖表
plt.show()

上述代碼顯示的圖形為:

這顏色有點太冷了,我們想顯示熱力圖,那只要在plt.contourf()函數(shù)中添加屬性cmap=plt.cm.hot就能顯示熱力圖,其中cmap代表為color map,我們把color map映射成hot(熱力圖),此處關(guān)鍵代碼為:

# 填充等高線
plt.contourf(X, Y, f(X, Y), cmap=plt.cm.hot)

顯示的圖為:

是否顯示得挺熱的。:)

上面是用plt.contourf()填充了等高線,但還有一種方式是可以直接顯示等高線,而不是填充的方式,例如:

C = plt.contour(X, Y, f(X, Y), 20)

這里20代表的是顯示等高線的密集程度,數(shù)值越大,畫的等高線數(shù)就越多。

這樣顯示的圖形為:

當(dāng)然,如果我們不調(diào)用前面的plt.contourf()函數(shù),則就會直接顯示等高線。

最后我們想在等高線中添加上標(biāo)注值:

plt.clabel(C, inline=True, fontsize=12)

顯示的圖為:

完整的代碼為:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# 計算x,y坐標(biāo)對應(yīng)的高度值
def f(x, y):
 return (1-x/2+x**5+y**3) * np.exp(-x**2-y**2)

# 生成x,y的數(shù)據(jù)
n = 256
x = np.linspace(-3, 3, n)
y = np.linspace(-3, 3, n)

# 把x,y數(shù)據(jù)生成mesh網(wǎng)格狀的數(shù)據(jù),因為等高線的顯示是在網(wǎng)格的基礎(chǔ)上添加上高度值
X, Y = np.meshgrid(x, y)

# 填充等高線
plt.contourf(X, Y, f(X, Y), 20, cmap=plt.cm.hot)
# 添加等高線
C = plt.contour(X, Y, f(X, Y), 20)
plt.clabel(C, inline=True, fontsize=12)
# 顯示圖表
plt.show()

總結(jié)

以上就是本文關(guān)于用matplotlib畫等高線圖詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

Python通過matplotlib繪制動畫簡單實例

Python的地形三維可視化Matplotlib和gdal使用實例

python學(xué)習(xí)之matplotlib繪制散點圖實例

如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • Python sqlparse解析SQL表血緣追蹤實現(xiàn)

    Python sqlparse解析SQL表血緣追蹤實現(xiàn)

    這篇文章主要為大家介紹了Python sqlparse解析SQL表血緣追蹤實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • python執(zhí)行系統(tǒng)命令后獲取返回值的幾種方式集合

    python執(zhí)行系統(tǒng)命令后獲取返回值的幾種方式集合

    今天小編就為大家分享一篇python執(zhí)行系統(tǒng)命令后獲取返回值的幾種方式集合,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • python實現(xiàn)刪除文件與目錄的方法

    python實現(xiàn)刪除文件與目錄的方法

    這篇文章主要介紹了python實現(xiàn)刪除文件與目錄的方法,詳細的分析了涉及Python文件操作的各種方法,需要的朋友可以參考下
    2014-11-11
  • Python使用BeautifulSoup進行XPath和CSS選擇器定位

    Python使用BeautifulSoup進行XPath和CSS選擇器定位

    在 Python 中,BeautifulSoup 是一個常用的 HTML 和 XML 解析庫,它允許我們輕松地定位和提取網(wǎng)頁中的特定元素,本文將詳細介紹如何在 BeautifulSoup 中使用 XPath 和 CSS 選擇器定位 HTML 元素,并提供示例代碼以幫助新手理解這些概念,需要的朋友可以參考下
    2024-11-11
  • Django使用rest_framework寫出API

    Django使用rest_framework寫出API

    這篇文章主要介紹了Django使用rest_framework寫出API,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • 如何基于Python實現(xiàn)一個慶祝國慶節(jié)的小程序

    如何基于Python實現(xiàn)一個慶祝國慶節(jié)的小程序

    這篇文章主要介紹了如何基于Python實現(xiàn)一個慶祝國慶節(jié)的小程序,增加了互動選擇祝福語、查詢信息、播放背景音樂及趣味小測驗等功能,使用tkinter增強GUI,提升用戶互動體驗,需要的朋友可以參考下
    2024-09-09
  • Python 實現(xiàn)文件讀寫、坐標(biāo)尋址、查找替換功能

    Python 實現(xiàn)文件讀寫、坐標(biāo)尋址、查找替換功能

    這篇文章主要介紹了Python 實現(xiàn)文件讀寫、坐標(biāo)尋址、查找替換功能,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2019-09-09
  • 源碼解析python中randint函數(shù)的效率缺陷

    源碼解析python中randint函數(shù)的效率缺陷

    這篇文章主要介紹了源碼解析python中randint函數(shù)的效率缺陷,通過討論?random?模塊的實現(xiàn),并討論了一些更為快速的生成偽隨機整數(shù)的替代方法展開主題,需要的盆友可以參考一下
    2022-06-06
  • Python并發(fā)多線程的具體操作步驟

    Python并發(fā)多線程的具體操作步驟

    并發(fā)指的是任務(wù)數(shù)多余cpu核數(shù),通過操作系統(tǒng)的各種任務(wù)調(diào)度算法,實現(xiàn)用多任務(wù)一起執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于Python并發(fā)多線程的具體操作步驟的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • 關(guān)于Python中的if __name__ == __main__詳情

    關(guān)于Python中的if __name__ == __main__詳情

    在學(xué)習(xí)Python的過程中發(fā)現(xiàn)即使把if __name__ == ‘__main__’ 去掉,程序還是照樣運行。很多小伙伴只知道是這么用的,也沒有深究具體的作用。這篇文字就來介紹一下Python中的if __name__ == ‘__main__’的作用,需要的朋友參考下文
    2021-09-09

最新評論

治多县| 门源| 比如县| 玉山县| 天门市| 东平县| 申扎县| 枣阳市| 怀仁县| 栖霞市| 丹凤县| 洛浦县| 平阳县| 响水县| 湾仔区| 保亭| 镇赉县| 巩留县| 台东县| 达拉特旗| 新乐市| 三明市| 武穴市| 庐江县| 内乡县| 余干县| 临汾市| 陈巴尔虎旗| 易门县| 习水县| 富顺县| 巴楚县| 梓潼县| 松阳县| 独山县| 资溪县| 江山市| 通辽市| 自贡市| 衢州市| 社旗县|