python matplotlib各種畫圖

1.引入matpltlib庫

matplotlib是一種優秀的python數據可視化第三方庫
使用matpltlib庫畫圖時,先將它引入,加載裡面的pyplot,並命名為plt,然後使用plot函數畫圖

import matplotlib.pyplot as plt #plt是引入模塊的別名


2.pyplot基礎圖標函數總結

3.plot函數畫圖語法規則

plot函數參數:plot([x],y,[format],**kwargs)

各類語法太多啦,偷幾張MOOC的圖放上來~

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

4.折線圖

from matplotlib import pyplot as plt

#生成數據
#橫坐標數據從2017到2022,第三個參數可控制步長,可寫可不寫
x = range(2017, 2022)
#y對應縱坐標的值
y1 = [49, 48, 45, 52, 50]
y2 = [60, 62, 61, 65, 63]
#生成圖形
plt.title("LMY and her mother's weight")
plt.xlabel('year')
plt.ylabel('kg')
plt.plot(x, y1, color='green', label='LMY')
plt.plot(x, y2, color='purple', label='mother')
plt.grid(alpha=0.5)
plt.legend(loc='upper right')
#顯示圖形
plt.show()

請添加圖片描述

4.散點圖

from matplotlib import pyplot as plt
import numpy as np

# 生成數據
# 橫坐標數據從2017到2022,第三個參數可控制步長,可寫可不寫
x = range(2017, 2022)
# y對應縱坐標的值
y1 = [49, 48, 45, 52, 50]
y2 = [60, 62, 61, 65, 63]
# 生成圖形
plt.title("LMY and her mother's weight")
plt.xlabel('year')
plt.ylabel('kg')
# 點的大小
area = np.pi*4**2
plt.scatter(x, y1, s=area, c='yellow', alpha=1)
plt.scatter(x, y2, s=area, c='blue', alpha=1)
plt.legend()
plt.yticks(())
plt.show()

請添加圖片描述

5.直方圖

from matplotlib import pyplot as plt
import numpy as np

# 生成數據
# 橫坐標數據從2017到2022,第三個參數可控制步長,可寫可不寫
x = [2017, 2018, 2019, 2020, 2021]
# y對應縱坐標的值
y1 = [49, 48, 45, 52, 50]
y2 = [60, 62, 61, 65, 63]
# 生成圖形
plt.title("LMY and her mother's weight")
plt.ylabel('frequency')
plt.xlabel('kg')
# 點的大小
plt.hist(y1, bottom=None, color='purple')
plt.hist(y2, bottom=None, color='pink')
plt.show()

# n, bins, patches = plt.hist(arr, bins=50, normed=1, facecolor='green', alpha=0.75)
'''
arr:需要計算直方圖的一維數組
bins:直方圖的柱數,可選項,默認為10
normed:是否將得到的直方圖向量歸一化,默認為0
facecolor:直方圖顏色
alpha:透明度
'''

在這裡插入圖片描述

6.條形圖

縱向

from matplotlib import pyplot as plt
import numpy as np

arr = np.arange(2017, 2022)
x = [49, 48, 45, 52, 50]  # x軸
y = [2017, 2018, 2019, 2020, 2021]
rect = plt.bar(arr, x, width=0.5)
plt.title('LMY')
plt.xlabel('weight')
plt.ylabel('year')
plt.legend()

plt.show()

請添加圖片描述

橫向

請添加圖片描述

多條

from matplotlib import pyplot as plt
import numpy as np

arr = np.arange(2017, 2022)
x1 = [49, 48, 45, 52, 50]  # x軸
x2 = [60, 62, 61, 65, 63]
y = [2017, 2018, 2019, 2020, 2021]
rects1 = plt.bar(arr, x1, 0.5, color='purple', label='LMY')
rects2 = plt.bar(arr, x2, 0.5, color='yellow', label='Mother', alpha=0.3)
plt.title("LMY and her mother's weight")
plt.xlabel('weight')
plt.ylabel('year')
plt.legend()

plt.show()

請添加圖片描述

7.餅圖

from matplotlib import patches, pyplot as plt
import numpy as np

label_list = ['49', '48', '45', '52', '50']
size = [20, 20, 20, 20, 20]
# 各部分的顏色
color = ['red', 'pink', 'blue', 'green', 'purple']
explode = [0, 0, 0.15, 0, 0]

patches, l_text, p_text = plt.pie(size, explode=explode, colors=color, labels=label_list,
                                  labeldistance=1.2, autopct="%1.2f%%", shadow=False, startangle=90, pctdistance=0.6)
plt.axis('equal')
plt.title("LMY's weight")
plt.legend(loc='upper left')
plt.show()

請添加圖片描述

到此這篇關於python matplotlib各種畫圖的文章就介紹到這瞭,更多相關python matplotlib畫圖內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: