matplotlib.pyplot庫(kù)是Python中一個(gè)非常重要的可視化工具,可以用于繪制各種圖表。本文給出了圖表繪制的各種示例
1、簡(jiǎn)單折線圖示例
import matplotlib.pyplot as plt
import numpy as np
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖
plt.plot(x, y)
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("Square Curve")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
# 顯示圖形
plt.show()
代碼中首先導(dǎo)入了matplotlib.pyplot庫(kù)和numpy庫(kù)。生成了一些數(shù)據(jù)并使用plt.plot()函數(shù)繪制了折線圖,同時(shí)使用plt.title()、plt.xlabel()和plt.ylabel() 函數(shù)為圖形添加標(biāo)題和坐標(biāo)軸標(biāo)簽。最后調(diào)用plt.show()函數(shù)顯示圖形。
2、設(shè)置中文字符,解決亂碼問(wèn)題
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖
plt.plot(x, y)
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("平方曲線")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 顯示圖形
plt.show()
第一行設(shè)置字體為“SimHei”,即黑體。第二行設(shè)置不使用負(fù)號(hào)作為軸標(biāo)志,避免出現(xiàn)亂碼。
3、添加標(biāo)記格式
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖和散點(diǎn)圖
plt.plot(x, y, '-o')
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("平方曲線")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 顯示圖形
plt.show()
在plot()函數(shù)中使用了’-o’參數(shù),其中’-'表示繪制線條,'o’表示繪制圓點(diǎn)。除了圓點(diǎn)外還有其他的數(shù)據(jù)標(biāo)記符號(hào),主要如下:
. 小圓點(diǎn) o 圓圈 v 倒三角 ^ 正三角 < 左三角 > 右三角 * 星號(hào) + 加號(hào) x 叉號(hào)
4、添加y值標(biāo)記
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖和散點(diǎn)圖
plt.plot(x, y, '-o')
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("平方曲線")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 在每個(gè)點(diǎn)的位置上添加文本標(biāo)注
for i, j in zip(x, y):
plt.text(i, j, str(j), ha='center', va='bottom')
# 顯示圖形
plt.show()
在這個(gè)示例中,我們使用了text()函數(shù)來(lái)添加文本標(biāo)注。我們通過(guò)循環(huán)遍歷所有數(shù)據(jù)點(diǎn),并在每個(gè)點(diǎn)的位置上添加對(duì)應(yīng)的y值文本標(biāo)注。其中,text()函數(shù)的參數(shù)中x指的是文本標(biāo)注的x坐標(biāo),y指的是文本標(biāo)注的y坐標(biāo),str(j)則是將y值轉(zhuǎn)換為字符串形式,便于標(biāo)注。ha和va參數(shù)指定文本標(biāo)注的水平和垂直對(duì)齊方式,這里分別設(shè)置為’center’和’bottom’,表示水平居中對(duì)齊和垂直向下對(duì)齊。
如果標(biāo)注有遮擋,可調(diào)整 i 、 j 坐標(biāo)
plt.text(i, j+2, str(j), ha='center', va='bottom')
5、添加圖例
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖和散點(diǎn)圖,并添加圖例
plt.plot(x, y, '-o', label='平方曲線')
plt.legend(loc='upper left')
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("平方曲線")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 在每個(gè)點(diǎn)的位置上添加文本標(biāo)注
for i, j in zip(x, y):
plt.text(i, j, str(j), ha='center', va='bottom')
# 顯示圖形
plt.show()
使用了legend()函數(shù)來(lái)添加圖例。首先在plot()函數(shù)中加入label參數(shù),并將其設(shè)置為’平方曲線’,這樣就會(huì)在圖例中顯示出這個(gè)標(biāo)簽。接著調(diào)用legend()函數(shù)并指定loc參數(shù)為’upper left’,表示將圖例顯示在左上角。最后在循環(huán)中添加文本標(biāo)注,并繪制出圖形。
6、設(shè)置字體大小
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題,并設(shè)置字體大小
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.rcParams['font.size'] = 12
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖和散點(diǎn)圖,并添加圖例
plt.plot(x, y, '-o', label='平方曲線')
plt.legend(loc='upper left')
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("平方曲線")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 在每個(gè)點(diǎn)的位置上添加文本標(biāo)注,并設(shè)置字體大小
for i, j in zip(x, y):
plt.text(i, j, str(j), ha='center', va='bottom', fontsize=10)
# 顯示圖形
plt.show()
使用了rcParams來(lái)設(shè)置字體大小。首先將字體大小設(shè)置為12,這樣所有的文字都會(huì)按照這個(gè)大小進(jìn)行顯示。在循環(huán)中添加文本標(biāo)注時(shí),同時(shí)將字體大小設(shè)置為10,以便讓文本更加清晰可讀。
7、設(shè)置坐標(biāo)軸起點(diǎn)數(shù)值
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題,并設(shè)置字體大小
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.rcParams['font.size'] = 12
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
y = x**2
# 繪制折線圖和散點(diǎn)圖,并添加圖例
plt.plot(x, y, '-o', label='平方曲線')
plt.legend(loc='upper left')
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("平方曲線")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 在每個(gè)點(diǎn)的位置上添加文本標(biāo)注,并設(shè)置字體大小
for i, j in zip(x, y):
plt.text(i, j, str(j), ha='center', va='bottom', fontsize=10)
# 設(shè)置x和y軸的范圍
plt.xlim([0,10])
plt.ylim([0,100])
# 顯示圖形
plt.show()
在這個(gè)示例中,在調(diào)用plot()函數(shù)時(shí)并未指定x和y軸的范圍,因此它們會(huì)自動(dòng)適應(yīng)所繪制的圖形。為了將x軸的起點(diǎn)數(shù)值設(shè)置為0,可以調(diào)用xlim()函數(shù)并傳入一個(gè)長(zhǎng)度為2的列表,其中第一個(gè)元素表示x軸起點(diǎn),第二個(gè)元素表示x軸終點(diǎn)。同樣的,為了將y軸的起點(diǎn)數(shù)值設(shè)置為0,可以調(diào)用ylim()函數(shù)并傳入一個(gè)長(zhǎng)度為2的列表,其中第一個(gè)元素表示y軸起點(diǎn),第二個(gè)元素表示y軸終點(diǎn)。最后,繪制出圖形并展示出來(lái)。
8、繪制多條折線
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題,并設(shè)置字體大小
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.rcParams['font.size'] = 12
# 生成數(shù)據(jù)
x = np.arange(0, 10, 1)
# 繪制多條折線,并添加圖例
plt.plot(x, x**2, '-o', label='平方曲線', color='red')
plt.plot(x, x**3, '-^', label='立方曲線', color='green')
plt.plot(x, x**4, '-s', label='四次方曲線', color='blue')
plt.legend(loc='upper left')
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title("多個(gè)冪函數(shù)")
plt.xlabel("x軸")
plt.ylabel("y軸")
# 顯示圖形
plt.show()
要修改每條線的顏色,可以在plt.plot()函數(shù)中設(shè)置color參數(shù)。該參數(shù)可以是預(yù)定義的顏色名稱(chēng)(如’red’、‘green’),也可以是RGB值、十六進(jìn)制顏色代碼或HTML顏色名稱(chēng)等。
9、散點(diǎn)圖基礎(chǔ)示例
import matplotlib.pyplot as plt
import numpy as np
# 解決中文亂碼問(wèn)題,并設(shè)置字體大小
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.rcParams['font.size'] = 12
# 生成隨機(jī)數(shù)據(jù)
x = np.random.randn(50)
y = np.random.randn(50)
# 繪制散點(diǎn)圖
plt.scatter(x, y)
# 添加標(biāo)題和坐標(biāo)軸標(biāo)簽
plt.title('散點(diǎn)圖示例')
plt.xlabel('X軸')
plt.ylabel('Y軸')
# 顯示圖形
plt.show()
matplotlib.pyplot庫(kù)可以使用scatter()函數(shù)繪制散點(diǎn)圖。其基本語(yǔ)法如下:
plt.scatter(x, y, s=None, c=None, marker=None, cmap=None)
其中,參數(shù)含義如下:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-628930.html
x和y:表示數(shù)據(jù)點(diǎn)的橫縱坐標(biāo)。
s:表示散點(diǎn)的大小(可選)。
c:表示散點(diǎn)的顏色(可選)。
marker:表示散點(diǎn)的形狀(可選)。
cmap:表示散點(diǎn)顏色的映射(可選)。
上述代碼將生成50個(gè)隨機(jī)數(shù)據(jù)點(diǎn)的散點(diǎn)圖,其中scatter()函數(shù)默認(rèn)散點(diǎn)大小為20,顏色為藍(lán)色。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-628930.html
到了這里,關(guān)于Python繪制折線圖、散點(diǎn)圖...Pyplot庫(kù)功能使用示例大全的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!