欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中28種極坐標(biāo)繪圖函數(shù)總結(jié)

 更新時間:2023年09月10日 10:22:41   作者:微小冷  
這篇文章主要為大家詳細(xì)介紹了python中28種極坐標(biāo)繪圖函數(shù)的用法,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以跟隨小編一起了解一下

參考

python35種繪圖函數(shù)總結(jié),3D、統(tǒng)計、流場,實用性拉滿

matplotlib中的畫圖函數(shù),大部分情況下只要聲明坐標(biāo)映射是polar,就都可以畫出對應(yīng)的極坐標(biāo)圖。但極坐標(biāo)和直角坐標(biāo)的坐標(biāo)區(qū)間不同,所以有些數(shù)據(jù)和函數(shù)關(guān)系適合在直角坐標(biāo)系中展示,而有些則適合在及坐標(biāo)中展示。

基礎(chǔ)圖

函數(shù)坐標(biāo)參數(shù)圖形類別
plotx,y曲線圖
stackplotx,y散點圖
stemx,y莖葉圖
scatterx,y散點圖
polarx,y極坐標(biāo)圖
stepx,y步階圖
barx,y條形圖
barhx,y橫向條形圖

bar和barh的對偶關(guān)系稍微有些抽象,可以理解為前者是以角度方向為x軸;而barh則是以半徑方向為x軸。

代碼如下

import matplotlib.pyplot as plt
import numpy as np
x = np.arange(20)/2
y = x
fDct = {"plot" : plt.plot,  "stackplot": plt.stackplot,
        "stem" : plt.stem,  "scatter"  : plt.scatter,         
        "polar": plt.polar, "step"     : plt.step, 
        "bar"  : plt.bar,   "barh"     : plt.barh, }
fig = plt.figure(figsize=(14,6))
for i,key in enumerate(fDct, 1):
    ax = fig.add_subplot(2,4,i, projection="polar")
    fDct[key](x, y)
    plt.title(key)
plt.tight_layout()
plt.show()

誤差線

函數(shù)坐標(biāo)圖形類別
errorbarx,y,xerr,yerr誤差線
fill_betweenx,y1,y2縱向區(qū)間圖
fill_betweenxy, x1, x2橫向區(qū)間圖

代碼如下

x = np.arange(20)/2
y = x
y1, y2 = 0.9*y, 1.1*y
x1, x2 = 0.9*x, 1.1*x
xerr = np.abs([x1, x2])/10
yerr = np.abs([y1, y2])/10
fig = plt.figure(figsize=(12,4))
ax = fig.add_subplot(141, projection='polar')
ax.errorbar(x, y, yerr=yerr)
plt.title("errorbar with yerr")
ax = fig.add_subplot(142, projection='polar')
ax.errorbar(x, y, xerr=xerr)
plt.title("errorbar with xerr")
ax = fig.add_subplot(143, projection='polar')
ax.fill_between(x, y1, y2)
plt.title("fill_between")
ax = fig.add_subplot(144, projection='polar')
ax.fill_betweenx(y, x1, x2)
plt.title("fill_betweenx")
plt.tight_layout()
plt.show()

等高線polar

繪圖函數(shù)坐標(biāo)說明
contour[x,y,]z等高線
contourf[x,y,]z填充等高線
pcolormesh[x,y,]z偽彩圖

由于imshow默認(rèn)其繪圖坐標(biāo)是標(biāo)準(zhǔn)的1x1網(wǎng)格,而在極坐標(biāo)種,這種網(wǎng)格的尺寸會隨著r的增大而增大,從而變得極其不實用,所以下面對極坐標(biāo)圖的演示,就不包含imshow了。

代碼如下

X, Y = np.indices([100,100])
X = X/100*np.pi*2
Y = Y/25 - 2
Z = (1 - np.sin(X) + np.cos(X)**5 + Y**3) * np.exp(-Y**2)
fDct = {"contour": plt.contour, "contourf":plt.contourf, 
    "pcolormesh" : plt.pcolormesh}
fig = plt.figure(figsize=(9,3))
for i,key in enumerate(fDct, 1):
    ax = fig.add_subplot(1,3,i, projection='polar')
    fDct[key](X,Y,Z)
    plt.title(key)
plt.tight_layout()
plt.show()

場圖polar

繪圖函數(shù)坐標(biāo)說明
quiverx,y,u,v向量場圖
streamplotx,y,u,v流場圖
barbsx,y,u,v風(fēng)場圖

代碼如下

Y, X = np.indices([10,10])
X = X/10*np.pi*2.5
Y = Y
#Y, X = np.indices([6,6])/0.75 - 4
U = 6*np.sin(X) + Y
V = Y - 6*np.sin(X)
dct = {"quiver":plt.quiver, "streamplot":plt.streamplot, 
       "barbs" :plt.barbs}
fig = plt.figure(figsize=(12,4))
for i,key in enumerate(dct, 1):
    ax = fig.add_subplot(1,3,i,projection='polar')
    dct[key](X,Y,U,V)
    plt.title(key)
plt.tight_layout()
plt.show()

統(tǒng)計圖

繪圖函數(shù)坐標(biāo)說明
histx數(shù)據(jù)直方圖
boxplotx箱線圖
violinplotx小提琴圖
enventplotx平行線疏密圖
hist2dx,y二維直方圖
hexbinx,y鉆石圖
piex餅圖

極坐標(biāo)在繪制直方圖的時候,需要注意其橫坐標(biāo)是以2π為周期的,也就是說隨機變量的最大值和最小值不得相差2π,否則會導(dǎo)致重疊。

由于極坐標(biāo)繪圖本質(zhì)上是一種坐標(biāo)映射,所以并不會把0和360°真正地等同起來,所以在hist2d中,整個圖像并沒有閉合。而最有意思的是餅圖,直接給壓扁了,讓人很難一下子看出不同組分的比例關(guān)系。

代碼如下

x = np.random.standard_normal(size=1000)
dct = {"hist"  : plt.hist, "violinplot" : plt.violinplot,
      "boxplot": plt.boxplot}
fig = plt.figure(figsize=(10,6))
for i,key in enumerate(dct, 1):
    ax = fig.add_subplot(2,3,i, projection='polar')
    dct[key](x)
    plt.title(key)
ax = fig.add_subplot(234, projection='polar')
ax.eventplot(x)
plt.title("eventplot")
x = np.random.randn(5000)
y = 1.2 * x + np.random.randn(5000) / 3
ax = fig.add_subplot(235, projection='polar')
ax.hist2d(x, y, bins=[np.arange(-3,3,0.1)] * 2)
plt.title("hist2d")
ax = fig.add_subplot(236, projection='polar')
ax.pie([1,2,3,4,5])
plt.title("pie")
plt.tight_layout()
plt.show()

非結(jié)構(gòu)坐標(biāo)圖

繪圖函數(shù)坐標(biāo)說明
tricontourx,y,z非結(jié)構(gòu)等高線
tricontourfx,y,z非結(jié)構(gòu)化填充等高線
tricolorx,y,z非結(jié)構(gòu)化偽彩圖
triplotx,y三角連線圖

代碼如下

x = np.random.uniform(0, np.pi*2, 256)
y = np.random.uniform(-2, 2, 256)
z = (1 - np.sin(x) + np.cos(x)**5 + y**3) * np.exp(-y**2)
levels = np.linspace(z.min(), z.max(), 7)
fig = plt.figure(figsize=(12,4))
ax = fig.add_subplot(141, projection='polar')
ax.plot(x, y, 'o', markersize=1, color='lightgrey', alpha=0.5)
ax.tricontour(x, y, z, levels=levels)
plt.title("tricontour")
ax = fig.add_subplot(142, projection='polar')
ax.plot(x, y, 'o', markersize=1, color='lightgrey', alpha=0.5)
ax.tricontourf(x, y, z, levels=levels)
plt.title("tricontourf")
ax = fig.add_subplot(143, projection='polar')
ax.plot(x, y, 'o', markersize=1, color='lightgrey', alpha=0.5)
ax.tripcolor(x, y, z)
plt.title("tripcolor")
ax = fig.add_subplot(144, projection='polar')
ax.triplot(x,y)
plt.title("triplot")
plt.tight_layout()
plt.show()

以上就是python中28種極坐標(biāo)繪圖函數(shù)總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于python極坐標(biāo)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python實現(xiàn)人工蜂群算法的示例代碼

    Python實現(xiàn)人工蜂群算法的示例代碼

    ABC,即人工蜂群算法(Artificial?Bee?Colony?Algorithm),由Karaboga等人提出,這篇文章主要介紹了人工蜂群算法的概念與Python實現(xiàn),感興趣的可以了解一下
    2023-08-08
  • Python中字符串轉(zhuǎn)換為列表的常用方法總結(jié)

    Python中字符串轉(zhuǎn)換為列表的常用方法總結(jié)

    本文將詳細(xì)介紹Python中將字符串轉(zhuǎn)換為列表的八種常用方法,每種方法都具有其獨特的用途和適用場景,文中的示例代碼講解詳細(xì),感興趣的可以了解下
    2023-11-11
  • 淺析Python3爬蟲登錄模擬

    淺析Python3爬蟲登錄模擬

    本篇文章通過學(xué)習(xí)python爬蟲相關(guān)知識點來分析Python3爬蟲登錄模擬的原理以及相關(guān)代碼分析,對此有興趣的朋友參考下。
    2018-02-02
  • 解決python-docx打包之后找不到default.docx的問題

    解決python-docx打包之后找不到default.docx的問題

    今天小編就為大家分享一篇解決python-docx打包之后找不到default.docx的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 在python中如何建立一個自己的包

    在python中如何建立一個自己的包

    這篇文章主要介紹了在python中如何建立一個自己的包,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python圖片處理之圖片裁剪教程

    Python圖片處理之圖片裁剪教程

    這篇博文的目的是從圖片中提取一定的矩形區(qū)域作為新的圖片 簡單來說:我的全家福丟了,所以我想從以前的房間照片里,提取出其中的全家福并重新打印一張(忽視畫質(zhì)問題)現(xiàn)在我就是這么個目的,需要的朋友可以參考下
    2021-05-05
  • python將中文數(shù)字轉(zhuǎn)化成阿拉伯?dāng)?shù)字的簡單方法

    python將中文數(shù)字轉(zhuǎn)化成阿拉伯?dāng)?shù)字的簡單方法

    這篇文章主要給大家介紹了關(guān)于python如何將中文數(shù)字轉(zhuǎn)化成阿拉伯?dāng)?shù)字的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Scrapy框架爬取Boss直聘網(wǎng)Python職位信息的源碼

    Scrapy框架爬取Boss直聘網(wǎng)Python職位信息的源碼

    今天小編就為大家分享一篇關(guān)于Scrapy框架爬取Boss直聘網(wǎng)Python職位信息的源碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python數(shù)據(jù)可視化之分析熱門話題“丁克家庭都怎么樣了”

    Python數(shù)據(jù)可視化之分析熱門話題“丁克家庭都怎么樣了”

    今天小編就以一個數(shù)據(jù)分析師的視角來向大家講述一下年輕人群體對于丁克的態(tài)度以及那些丁克家庭他們的想法是怎么樣的?他們是否有過后悔當(dāng)初的決定,需要的朋友可以參考下
    2021-06-06
  • python七種方法判斷字符串是否包含子串

    python七種方法判斷字符串是否包含子串

    這篇文章主要介紹了python七種方法判斷字符串是否包含子串,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-08-08

最新評論