1.環(huán)境

創(chuàng)新互聯(lián)公司專注于永定企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城網(wǎng)站定制開發(fā)。永定網(wǎng)站建設(shè)公司,為永定等地區(qū)提供建站服務(wù)。全流程按需定制設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
系統(tǒng):windows10
python版本:python3.6.1
使用的庫:matplotlib,numpy
2.numpy庫產(chǎn)生隨機(jī)數(shù)幾種方法
import numpy as np
numpy.random
rand(d0,?d1,?...,?dn) ?
In [2]: x=np.random.rand(2,5)
In [3]: x
Out[3]:
array([[ 0.84286554, ?0.50007593, ?0.66500549, ?0.97387807, ?0.03993009],
[ 0.46391661, ?0.50717355, ?0.21527461, ?0.92692517, ?0.2567891 ]])
randn(d0,?d1,?...,?dn)查詢結(jié)果為標(biāo)準(zhǔn)正態(tài)分布
In [4]: x=np.random.randn(2,5)
In [5]: x
Out[5]:
array([[-0.77195196, ?0.26651203, -0.35045793, -0.0210377 , ?0.89749635],
[-0.20229338, ?1.44852833, -0.10858996, -1.65034606, -0.39793635]])
randint(low,high,size) ?
生成low到high之間(半開區(qū)間 [low, high)),size個(gè)數(shù)據(jù)
In [6]: x=np.random.randint(1,8,4)
In [7]: x
Out[7]: array([4, 4, 2, 7])
random_integers(low,high,size) ?
生成low到high之間(閉區(qū)間 [low, high)),size個(gè)數(shù)據(jù)
In [10]: x=np.random.random_integers(2,10,5)
In [11]: x
Out[11]: array([7, 4, 5, 4, 2])
3.散點(diǎn)圖
x x軸
y y軸
s ? 圓點(diǎn)面積
c ? 顏色
marker ?圓點(diǎn)形狀
alpha ? 圓點(diǎn)透明度????????????????#其他圖也類似這種配置
N=50# height=np.random.randint(150,180,20)# weight=np.random.randint(80,150,20)
x=np.random.randn(N)
y=np.random.randn(N)
plt.scatter(x,y,s=50,c='r',marker='o',alpha=0.5)
plt.show()
4.折線圖
x=np.linspace(-10000,10000,100) #將-10到10等區(qū)間分成100份
y=x**2+x**3+x**7
plt.plot(x,y)
plt.show()
折線圖使用plot函數(shù)
5.條形圖
N=5
y=[20,10,30,25,15]
y1=np.random.randint(10,50,5)
x=np.random.randint(10,1000,N)
index=np.arange(N)
plt.bar(left=index,height=y,color='red',width=0.3)
plt.bar(left=index+0.3,height=y1,color='black',width=0.3)
plt.show()
orientation設(shè)置橫向條形圖
N=5
y=[20,10,30,25,15]
y1=np.random.randint(10,50,5)
x=np.random.randint(10,1000,N)
index=np.arange(N)# plt.bar(left=index,height=y,color='red',width=0.3)# plt.bar(left=index+0.3,height=y1,color='black',width=0.3)#plt.barh() 加了h就是橫向的條形圖,不用設(shè)置orientation
plt.bar(left=0,bottom=index,width=y,color='red',height=0.5,orientation='horizontal')
plt.show()
6.直方圖
m1=100
sigma=20
x=m1+sigma*np.random.randn(2000)
plt.hist(x,bins=50,color="green",normed=True)
plt.show()
# #雙變量的直方圖# #顏色越深頻率越高# #研究雙變量的聯(lián)合分布
#雙變量的直方圖#顏色越深頻率越高#研究雙變量的聯(lián)合分布
x=np.random.rand(1000)+2
y=np.random.rand(1000)+3
plt.hist2d(x,y,bins=40)
plt.show()
7.餅狀圖
#設(shè)置x,y軸比例為1:1,從而達(dá)到一個(gè)正的圓
#labels標(biāo)簽參數(shù),x是對(duì)應(yīng)的數(shù)據(jù)列表,autopct顯示每一個(gè)區(qū)域占的比例,explode突出顯示某一塊,shadow陰影
labes=['A','B','C','D']
fracs=[15,30,45,10]
explode=[0,0.1,0.05,0]#設(shè)置x,y軸比例為1:1,從而達(dá)到一個(gè)正的圓
plt.axes(aspect=1)#labels標(biāo)簽參數(shù),x是對(duì)應(yīng)的數(shù)據(jù)列表,autopct顯示每一個(gè)區(qū)域占的比例,explode突出顯示某一塊,shadow陰影
plt.pie(x=fracs,labels=labes,autopct="%.0f%%",explode=explode,shadow=True)
plt.show()
8.箱型圖
import matplotlib.pyplot as pltimport numpy as npdata=np.random.normal(loc=0,scale=1,size=1000)#sym 點(diǎn)的形狀,whis虛線的長(zhǎng)度plt.boxplot(data,sym="o",whis=1.5)plt.show()
#sym 點(diǎn)的形狀,whis虛線的長(zhǎng)度
我們?cè)谶\(yùn)用Python制作各種圖形的時(shí)候,經(jīng)常需要繪制餅圖。那么如何用Python繪制餅圖呢?下面我給大家分享演示一下。
工具/材料
Pycharm
01
首先我們需要在Excel文件中準(zhǔn)備好餅圖的數(shù)據(jù),如下圖所示
02
接下來我們打開Pycharm,新建Python文件,導(dǎo)入Python的pandas庫,利用pandas將Excel數(shù)據(jù)加載到緩存中,如下圖所示
03
然后我們?cè)趯?dǎo)入pyplot庫,運(yùn)用pyplot庫的pie進(jìn)行餅圖的繪制,如下圖所示
04
接著運(yùn)行程序以后我們就可以看到一張如下圖所示的餅圖了,但是四周的名稱和Excel中的還是不太一樣,接下來修改四周的名稱
05
我們?cè)谶\(yùn)用pandas庫加載Excel數(shù)據(jù)文件的時(shí)候加上index_col屬性即可,如下圖所示
06
這次在運(yùn)行程序我們就可以看到餅圖四周的名稱和Excel中的一樣了,如下圖所示
07
接著我們?cè)谶\(yùn)用pyplot中的title和ylable設(shè)置餅圖的標(biāo)題和Y坐標(biāo)軸的名稱,如下圖所示
08
最后運(yùn)行文件就可以看到下面這個(gè)信息比較齊全的餅圖了,如下圖所示,到這里用Python繪制餅圖就結(jié)束了
餅形圖:
餅圖是圓形統(tǒng)計(jì)圖。
整個(gè)圖表的區(qū)域代表100%或全部數(shù)據(jù)。
餅圖中顯示的餅圖區(qū)域代表數(shù)據(jù)部分的百分比。
餅圖的各個(gè)部分稱為楔形。
楔形的弧長(zhǎng)決定餅圖中楔形的面積。
楔形的面積決定了零件相對(duì)于整體的相對(duì)量子或百分比。
餅圖經(jīng)常用于業(yè)務(wù)演示中,因?yàn)樗鼈兛梢钥焖俑攀鰳I(yè)務(wù)活動(dòng),例如銷售,運(yùn)營(yíng)等。
餅形圖還大量用于調(diào)查結(jié)果,新聞文章,資源使用圖(如磁盤和內(nèi)存)中。
使用Python Matplotlib繪制簡(jiǎn)單的餅圖
可以使用pyplot模塊中的函數(shù)pie()繪制餅圖。 以下python代碼示例使用pie()函數(shù)繪制了一個(gè)餅圖。
默認(rèn)情況下,pyplot的pie()功能沿逆時(shí)針方向排列餅圖中的餅形或楔形。
y:數(shù)值
labels = x:月份標(biāo)簽
labeldistance=1.2:這個(gè)表示月份標(biāo)簽到圓餅圖的距離
startangle=90:這個(gè)表示開始角度,90度,代表著1月份在時(shí)鐘12點(diǎn)方向
counterclock=False:這個(gè)代表數(shù)據(jù)的順時(shí)針還是逆時(shí)針方向,F(xiàn)ALSE代表順時(shí)針,TRUE代表逆時(shí)針
autopct='%3.2f%%':這個(gè)是數(shù)據(jù)標(biāo)簽,圓餅圖上顯示每一塊所占的百分比;
matplotlib
餅狀圖:
保存圖片:
subplot_adjust:
enumerate() 函數(shù)用于將一個(gè)可遍歷的數(shù)據(jù)對(duì)象(如列表、元組或字符串)組合為一個(gè)索引序列,同時(shí)列出數(shù)據(jù)和數(shù)據(jù)下標(biāo),一般用在 for 循環(huán)當(dāng)中。
語法:
enumerate(sequence, [start=0])
參數(shù):
sequence -- 一個(gè)序列、迭代器或其他支持迭代對(duì)象。
start -- 下標(biāo)起始位置。
返回值:
返回 enumerate(枚舉) 對(duì)象。
網(wǎng)站標(biāo)題:python的pie函數(shù) Python的pi
網(wǎng)址分享:http://chinadenli.net/article2/doojeoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站排名、動(dòng)態(tài)網(wǎng)站、網(wǎng)站導(dǎo)航、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)