溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

發(fā)布時間:2021-03-30 09:47:25 來源:億速云 閱讀:175 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

前言

Matplotlib 是 Python 的繪圖庫。 它可與 NumPy 一起使用,提供了一種有效的 MatLab 開源替代方案。 它也可以和圖形工具包一起使用,如 PyQt 和 wxPython。

用matplotlib繪制一些大家比較熟悉又經(jīng)?;煜慕y(tǒng)計(jì)圖形,掌握這些統(tǒng)計(jì)圖形可以對數(shù)據(jù)可視化有一個深入理解。

Windows 系統(tǒng)安裝 Matplotlib

進(jìn)入到 cmd 窗口下,執(zhí)行以下命令:

python -m pip install -U pip setuptools
python -m pip install matplotlib

Linux 系統(tǒng)安裝 Matplotlib

可以使用 Linux 包管理器來安裝:

Debian / Ubuntu:

sudo apt-get install python-matplotlib

Fedora / Redhat:

sudo yum install python-matplotlib

Mac OSX 系統(tǒng)安裝 Matplotlib

Mac OSX 可以使用 pip 命令來安裝:

sudo python -mpip install matplotlib

安裝完后,你可以使用 python -m pip list 命令來查看是否安裝了 matplotlib 模塊。

$ python -m pip list | grep matplotlib
matplotlib (1.3.1)

1.函數(shù)bar()--用于繪制柱狀圖

在x軸上繪制定性數(shù)據(jù)的分布特征

import matplotlib as mpl
import matplotlib.pyplot as plt

mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False

x=[1,2,3,4,5,6,7,8]
y=[3,1,4,5,8,9,7,2]
plt.bar(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/")
plt.xlabel("箱子編號")
plt.ylabel("箱子重量(kg)")
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形2.

2、函數(shù)barh()--用于繪制條形圖

在y軸上繪制定性數(shù)據(jù)的分布特征

import matplotlib as mpl
import matplotlib.pyplot as plt

mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False

x=[1,2,3,4,5,6,7,8]
y=[3,1,4,5,8,9,7,2]
plt.barh(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/")
plt.xlabel("箱子編號")
plt.ylabel("箱子重量(kg)")
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形3.

3、函數(shù)hist()--用于繪制直方圖

在x軸上繪制定量數(shù)據(jù)的分布特征

import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False

#set test scores
boxWeight = np.random.randint(0,10,100)
x = boxWeight
#plot histogram
bins = range(0,11,1)
plt.hist(x,bins=bins,
  color="g",
  histtype="bar",
  rwidth=1,
  alpha=0.6)
#set x,y-axis label
plt.xlabel("箱子重量(kg)")
plt.ylabel("銷售數(shù)量(個)")
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

4.函數(shù)pie()--用于繪制餅圖

繪制定性數(shù)據(jù)的不同類別的百分比

import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False

kinds ="簡易箱","保溫箱","行李箱","密封箱"
colors = ["#e41a1c","#377eb8","#4daf4a","#984ea3"]
soldNums = [0.05,0.45,0.15,0.35]
#pie chart
plt.pie(soldNums,
 labels=kinds,
 autopct="%3.1f%%",
 startangle=60,
 colors=colors)
plt.title("不同類型箱子的銷售數(shù)量占比")
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

5.函數(shù)polar()--用于繪制極線圖

在極坐標(biāo)圖上繪制折線圖

import matplotlib.pyplot as plt
import numpy as np
barSlices = 12
theta = np.linspace(0.0,2*np.pi,barSlices,endpoint=False)
r = 30*np.random.rand(barSlices)
plt.polar(theta,r, #theta每個標(biāo)記所在射線與極徑的夾角,r每個標(biāo)記到原點(diǎn)的距離
  color="chartreuse",
  linewidth=2,
  marker="*",
  mfc="b",
  ms=10)
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

6.函數(shù)scatter()--用于繪制氣泡圖

二維數(shù)據(jù)借助氣泡圖大小展示三維數(shù)據(jù)

import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
a = np.random.randn(100)
b = np.random.randn(100)
#colormap:RdYlBu
plt.scatter(a,b,s=np.power(10*a+20*b,2),#s散點(diǎn)標(biāo)記的大小
  c=np.random.rand(100),#c散點(diǎn)標(biāo)記的顏色
  cmap=mpl.cm.RdYlBu,#將浮點(diǎn)數(shù)映射成顏色的顏色映射表
  marker='o')
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

7.函數(shù)stem()--用于繪制棉棒圖

繪制離散的有序數(shù)據(jù)

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0.5,2*np.pi,20)
y = np.random.randn(20)
plt.stem(x,y,linefmt="-.",markerfmt="o",basefmt="-")
linefmt棉棒的樣式、markerfmt棉棒末端的樣式、basefmt指定基線的樣式
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

8.函數(shù)boxplot()--用于繪制箱型圖

繪制箱型圖

import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False

x = np.random.randn(1000)
plt.boxplot(x)
plt.xticks([1],["隨機(jī)數(shù)生成器AlphaRM"])
plt.ylabel("隨機(jī)數(shù)值")
plt.title("隨機(jī)數(shù)生成器抗干擾能力的穩(wěn)定性")
plt.grid(axis="y",ls=":",lw=1,color="gray",alpha=0.4)
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

9.函數(shù)errorbar()--用于繪制誤差棒圖

繪制y軸方向或是x軸方向的誤差范圍

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0.1,0.6,6)
y = np.exp(x)
plt.errorbar(x,y,fmt="bo:",yerr=0.2,xerr=0.02)
plt.xlim(0,0.7)
plt.show()

Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形

以上是“Python如何使用統(tǒng)計(jì)函數(shù)繪制簡單圖形”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI