国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python使用matplotlib繪制柱狀圖教程

python使用matplotlib繪制柱狀圖教程

2020-09-20 10:41Python教程網 Python

這篇文章主要介紹了python使用matplotlib繪制柱狀圖的方法教程,其中實現的柱狀圖效果包括基本的柱狀圖、堆疊柱狀圖、并列柱狀圖、條形圖以及柱狀圖的各種樣式設置,需要的朋友可以參考借鑒,下面來一起看看吧。

Matplotlib的概念這里就不多介紹了,關于繪圖庫Matplotlib的安裝方法:點擊這里

小編之前也和大家分享過python使用matplotlib實現的折線圖制餅圖效果,感興趣的朋友們也可以點擊查看,下面來看看python使用matplotlib繪制柱狀圖的方法吧,具體如下:

1. 基本的柱狀圖

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.bar(range(len(data)), data)
plt.show()

python使用matplotlib繪制柱狀圖教程

plt.bar函數簽名為:

?
1
bar(left, height, width=0.8, bottom=None, **kwargs)

事實上,left,height,width,bottom這四個參數確定了柱體的位置和大小。默認情況下,left為柱體的居中位置(可以通過align參數來改變left值的含義),即:

  • (left - width / 2, bottom)為左下角位置
  • (left + width / 2, bottom + height)為右上角位置

例如:

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.bar([0.3, 1.7, 4, 6, 7], data, width=0.6, bottom=[10, 0, 5, 0, 5])
plt.show()

python使用matplotlib繪制柱狀圖教程

2. 設置柱體樣式

(1)顏色

通過facecolor(或fc)關鍵字參數可以設置柱體顏色,例如:

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.bar(range(len(data)), data, fc='g')
plt.show()

python使用matplotlib繪制柱狀圖教程

通過color關鍵字參數 可以一次性設置多個顏色,例如:

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.bar(range(len(data)), data, color='rgb') # or `color=['r', 'g', 'b']`
plt.show()

python使用matplotlib繪制柱狀圖教程

(2)描邊

相關的關鍵字參數為:

  • edgecolor 或 ec
  • linestyle 或 ls
  • linewidth 或 lw

例如:

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.bar(range(len(data)), data, ec='r', ls='--', lw=2)
plt.show()

python使用matplotlib繪制柱狀圖教程

(3)填充

hatch關鍵字可用來設置填充樣式,可取值為:/, , |, -, +, x, o, O, ., *。例如:

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.bar(range(len(data)), data, ec='k', lw=1, hatch='o')
plt.show()

3. 設置tick label

?
1
2
3
4
5
6
7
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
labels = ['Tom', 'Dick', 'Harry', 'Slim', 'Jim']
 
plt.bar(range(len(data)), data, tick_label=labels)
plt.show()

python使用matplotlib繪制柱狀圖教程

4. 堆疊柱狀圖

通過bottom參數,可以繪制堆疊柱狀圖。例如:

?
1
2
3
4
5
6
7
8
9
10
11
12
import numpy as np
import matplotlib.pyplot as plt
 
size = 5
x = np.arange(size)
a = np.random.random(size)
b = np.random.random(size)
 
plt.bar(x, a, label='a')
plt.bar(x, b, bottom=a, label='b')
plt.legend()
plt.show()

python使用matplotlib繪制柱狀圖教程

5. 并列柱狀圖

繪制并列柱狀圖與堆疊柱狀圖類似,都是繪制多組柱體,只需要控制好每組柱體的位置和大小即可。例如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import numpy as np
import matplotlib.pyplot as plt
 
size = 5
x = np.arange(size)
a = np.random.random(size)
b = np.random.random(size)
c = np.random.random(size)
 
total_width, n = 0.8, 3
width = total_width / n
x = x - (total_width - width) / 2
 
plt.bar(x, a, width=width, label='a')
plt.bar(x + width, b, width=width, label='b')
plt.bar(x + 2 * width, c, width=width, label='c')
plt.legend()
plt.show()

python使用matplotlib繪制柱狀圖教程

6. 條形圖

使用barh方法繪制條形圖。例如:

?
1
2
3
4
5
6
import matplotlib.pyplot as plt
 
data = [5, 20, 15, 25, 10]
 
plt.barh(range(len(data)), data)
plt.show()

python使用matplotlib繪制柱狀圖教程

plt.barh方法的簽名為:

?
1
barh(bottom, width, height=0.8, left=None, **kwargs)

可以看到與plt.bar方法類似。因此堆積條形圖和并列條形圖的畫法與前面類似,不做贅述。

7. 正負條形圖

?
1
2
3
4
5
6
7
8
9
import numpy as np
import matplotlib.pyplot as plt
 
a = np.array([5, 20, 15, 25, 10])
b = np.array([10, 15, 20, 15, 5])
 
plt.barh(range(len(a)), a)
plt.barh(range(len(b)), -b)
plt.show()

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家學習或者使用python能帶來一定的幫助,如果有疑問大家可以留言交流。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜精品在线 | 亚洲二区在线观看 | 伊人春色在线播放 | 特级淫片日本高清视频免费 | 欧美国产精品一区 | 亚洲免费在线 | 国产一区二区三区四区二区 | 精品免费在线 | 日韩毛片视频 | 亚洲欧美激情精品一区二区 | 国产激情网 | 婷婷五月色综合 | 日韩视频一区二区三区 | 天天拍拍天天干 | 蜜臀网| 婷婷欧美| 成人av片在线观看 | 一区二区三区高清 | 91精品国产综合久久久久 | 国产小视频自拍 | 做a视频 | 免费裸体无遮挡黄网站免费看 | 精品乱子伦一区二区三区 | 日韩欧美国产一区二区 | 亚洲精品一区二区三区99 | a网站在线观看 | 婷婷综合久久 | 久久久久久一级片 | 亚洲自拍不卡 | 久久国产精品久久久久久久久久 | 免费av电影网站 | 中文字幕乱码亚洲精品一区 | 这里只有精品视频在线 | 亚洲午夜精品 | 国产精品久久久久久亚洲调教 | 91天堂| 中文字幕精品一区二区三区精品 | 国产精品爱久久久久久久 | 国产精品久久久久久久久 | 日本a在线 | 色香阁99久久精品久久久 |