一、Matplotlib 玫瑰圖
玫瑰圖是一種極坐標(biāo)圖形,用于表示連續(xù)型數(shù)據(jù)。其構(gòu)造方式是將360度的圓周均勻分成若干份,每一份對(duì)應(yīng)一組數(shù)據(jù)。在Matplotlib中,可以通過(guò)polar()函數(shù)繪制玫瑰圖。下面是一個(gè)繪制四個(gè)方向分別占25%的例子:
# 導(dǎo)入必要的庫(kù)
import numpy as np
import matplotlib.pyplot as plt
# 生成數(shù)據(jù)
data = [25, 25, 25, 25]
theta = np.linspace(0, 2*np.pi, len(data), endpoint=False)
radii = np.array(data)
# 繪制圓形
plt.figure(figsize=(6, 6))
plt.subplot(111, projection='polar')
colors = ['#4e79a7','#f28e2b','#e15759','#76b7b2']
bars = plt.bar(theta, radii, width=0.2, bottom=0.0, color=colors)
plt.show()
代碼解析:
1、導(dǎo)入numpy和matplotlib.pyplot庫(kù);
2、設(shè)置數(shù)據(jù)data和θ,因?yàn)槭敲倒鍒D,θ被均勻地分成len(data)份;
3、繪圖,首先必須生成一個(gè)極坐標(biāo)系的圖像(projection='polar');接著定義顏色和棒狀圖,然后使用plt.bar()函數(shù)實(shí)現(xiàn)繪圖。
二、Matplotlib中文顯示
Matplotlib中文支持在windows環(huán)境下使用TrueType字體進(jìn)行繪圖(通常情況下默認(rèn)字體無(wú)法正確顯示中文),下面是一個(gè)繪制中文標(biāo)題的例子:
# 導(dǎo)入必要的庫(kù)
import numpy as np
import matplotlib.pyplot as plt
# 更改字體
plt.rcParams['font.sans-serif'] = ['SimHei'] # 使matplotlib可以顯示中文
plt.rcParams['axes.unicode_minus'] = False # 使matplotlib可以顯示負(fù)號(hào)
# 生成數(shù)據(jù)
x = np.linspace(-5, 5, 100)
y = 1 / (1 + np.exp(-x))
# 繪圖
plt.plot(x, y)
plt.title('邏輯函數(shù)')
plt.xlabel('x')
plt.ylabel('y')
plt.grid(True)
plt.show()
代碼解析:
1、第一行是導(dǎo)入必要的庫(kù);
2、使用rcParams可以設(shè)置默認(rèn)字體為中文字體;
3、生成數(shù)據(jù)x和y;
4、plot()函數(shù)實(shí)現(xiàn)繪圖,通過(guò)title()、xlabel()、ylabel()和grid()實(shí)現(xiàn)深度定制。
三、Matplotlib教程視頻
Matplotlib官方提供了豐富的視頻教程,可以幫助新手更好地理解代碼和API。下面是一些值得推薦的Matplotlib視頻教程:
1、Matplotlib Tutorials by sentdex;
2、Matplotlib for Data Science Essential Training by LinkedIn Learning;
3、Matplotlib Tutorial Series by Corey Schafer;
4、Plotting in Python with Matplotlib by DataCamp。
四、Matplotlib庫(kù)設(shè)置中文
繪圖時(shí)可以通過(guò)定制Matplotlib庫(kù)實(shí)現(xiàn)中文顯示,比如可以使用set_xticklabels()和set_yticklabels()函數(shù)設(shè)置坐標(biāo)軸的標(biāo)簽:
# 導(dǎo)入必要的庫(kù)
import numpy as np
import matplotlib.pyplot as plt
# 更改字體
plt.rcParams['font.sans-serif'] = ['SimHei'] # 使matplotlib可以顯示中文
plt.rcParams['axes.unicode_minus'] = False # 使matplotlib可以顯示負(fù)號(hào)
# 生成數(shù)據(jù)
x = np.arange(0, 5, 0.2)
y = np.sin(x*np.pi)
# 繪圖
fig, ax = plt.subplots()
ax.plot(x, y)
ax.set_title('正弦曲線')
ax.set_xlabel('時(shí)間 (s)')
ax.set_ylabel('振幅 (mm)')
ax.grid(True)
# 設(shè)置坐標(biāo)軸標(biāo)簽
labels = ax.get_xticklabels() + ax.get_yticklabels()
for label in labels:
label.set_fontname('SimHei')
label.set_fontsize(16)
plt.show()
代碼解析:
1、導(dǎo)入必要的庫(kù);
2、使用rcParams可以設(shè)置默認(rèn)字體為中文字體;
3、生成數(shù)據(jù)x和y;
4、plot()函數(shù)實(shí)現(xiàn)繪圖,通過(guò)title()、xlabel()、ylabel()和grid()實(shí)現(xiàn)深度定制;
5、使用get_xticklabels()和get_yticklabels()函數(shù)獲取當(dāng)前坐標(biāo)軸的標(biāo)簽,然后使用set_fontname()和set_fontsize()函數(shù)實(shí)現(xiàn)定制化。
五、Matplotlib中文手冊(cè)
Matplotlib官方提供了中文手冊(cè),包括教程、API和FAQ。中文手冊(cè)對(duì)于新手學(xué)習(xí)Matplotlib是非常有用的,因?yàn)槠渲邪舜罅康氖纠a和使用方法。在Matplotlib的文檔頁(yè)面中,可以通過(guò)“中文手冊(cè)”鏈接找到中文手冊(cè)。
六、Matplotlib介紹及作用
Matplotlib是Python中廣泛使用的可視化工具之一,用于制作圖表、圖像、動(dòng)畫(huà)等。Matplotlib具有以下特點(diǎn):
1、龐大的用戶群體;
2、易于使用且容易上手;
3、具有高度的定制化程度;
4、支持多種不同類型的圖表;
5、完全開(kāi)源的。
七、Matplotlib怎么讀
Matplotlib是一個(gè)非常有用的Python可視化庫(kù),現(xiàn)在已經(jīng)成為Python數(shù)據(jù)科學(xué)家必學(xué)技能之一。讀者可以從Matplotlib的官網(wǎng)和GitHub頁(yè)面獲取最新的版本和文檔。在學(xué)習(xí)Matplotlib時(shí),推薦使用官方提供的教程、API和FAQ,以便更好地理解Matplotlib的用法。在線學(xué)習(xí)網(wǎng)站DataCamp和Coursera等也提供了課程,可以通過(guò)這些網(wǎng)站獲得更多的Matplotlib使用技巧。
八、Matplotlib legend
在Matplotlib中,可以使用legend()函數(shù)將數(shù)據(jù)的注解添加到繪圖中,下面是一個(gè)繪制帶注解折線圖的例子:
# 導(dǎo)入必要的庫(kù)
import numpy as np
import matplotlib.pyplot as plt
# 生成數(shù)據(jù)
x = np.linspace(-5, 5, 100)
y1 = 0.5 * x + 1
y2 = -0.5 * x + 5
# 繪圖
plt.plot(x, y1, color='red', linewidth=2.0, linestyle='--', label='y=0.5x+1')
plt.plot(x, y2, color='blue', linewidth=2.0, linestyle='-', label='y=-0.5x+5')
plt.legend(loc='upper left') # 添加注解
plt.grid(True)
plt.show()
代碼解析:
1、第一行是導(dǎo)入必要的庫(kù);
2、生成數(shù)據(jù)x和y;
3、使用plot()函數(shù)和其他參數(shù)繪制兩條折線;
4、使用legend()函數(shù)添加注解,具體可以通過(guò)loc參數(shù)在圖中指定注解的位置;
5、使用grid()函數(shù)添加網(wǎng)格線。
九、Matplotlib怎么安裝
在安裝Matplotlib之前,需要確保已經(jīng)安裝Python 2.7-3.7和Numpy。然后可以通過(guò)pip命令安裝Matplotlib:
pip install matplotlib
或者可以下載源代碼進(jìn)行安裝:
python setup.py install
如果已經(jīng)安裝了Anaconda Python,可以快速安裝Matplotlib:
conda install matplotlib
安裝完成后,可以在Python中導(dǎo)入matplotlib庫(kù)來(lái)開(kāi)始繪圖任務(wù)。