最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

第十章 第三方庫-Matplotlib-1

2023-07-13 09:39 作者:wangyanhpa  | 我要投稿

本章我們介紹幾種第三方庫,理解Python的強大功能。主要有NumPy、SciPy和 Matplotlib(繪圖庫),這些庫提供了一個強大的科學(xué)計算環(huán)境,有助于我們通過 Python 學(xué)習(xí)數(shù)據(jù)科學(xué)或者機器學(xué)習(xí)。

10.1 Matplotlib

Matplotlib庫由各種可視化類構(gòu)成,內(nèi)部結(jié)構(gòu)復(fù)雜,受Matlab啟發(fā)。matplotlib.pyplot是繪制各類可視化圖形的命令子庫,相當(dāng)于快捷方式。import matplotlib.pyplot as plt

Matplotlib是第一個Python可視化庫,繪制數(shù)據(jù)圖,有許多別的程序庫都是建立在其基礎(chǔ)上或者直接調(diào)用該庫,可以很方便地得到數(shù)據(jù)的大致信息,功能非常強大,但也非常復(fù)雜。

我們從簡單的開始。

?

1.plot函數(shù)實例

plt.plot(x, y,format_string,**kwargs)

format_string:控制曲線的格式字符串(可選),由顏色字符、風(fēng)格字符和標(biāo)記字符組成

x:x軸數(shù)據(jù),列表或數(shù)組,可選

y:y軸數(shù)據(jù),列表或數(shù)組

format_string:控制曲線的格式字符串

**kwargs: 第二組或更多的(x,y,format_string)

?

format_string:控制曲線的格式字符串,可選。由顏色字符、風(fēng)格字符和標(biāo)記字符組成

風(fēng)格字符????????說明

'-'????????????????????實線

'--'? ? ? ? ? ? ? ? 破折線

'-.'? ?????????????????點劃線

':'? ?????????????????虛線

' '? ?????????????????無線條

import numpy as np

import matplotlib.pyplot as plt

a=np.arange(10)

print(a)

plt.plot(a,a*2,a,a*3,a,a*4,a,a*5)??? #修改此行代碼

plt.show()

運行結(jié)果如下,輸出圖形為下圖左側(cè)。:

[0 1 2 3 4 5 6 7 8 9]

#修改此行代碼 ??位置替換為下述代碼,輸出圖形為上圖中間。

plt.plot(a,a*2,'r:D',a,a*3,'b-o',a,a*4,'m-.,',a,a*5,'r:x')

**kwargs: 第二組或更多(x,y,format_string)

color: 控制顏色 如color='green'

linestyle:線條控制 如linestyle='dashed'

marker:標(biāo)記風(fēng)格,marker='o'

markerfacecolor:標(biāo)記顏色,markerfacecolor='blue'

markersize:標(biāo)記尺寸,markersize=20

#修改此行代碼 ??位置替換為下述代碼,輸出圖形為上圖右側(cè)。

plt.plot(a,a*2,'r:D',a,a*3,'b-o',a,a*4,'m-.,',a,a*5,'r:x',markerfacecolor='yellow',markersize=10)

?

再看一個正弦曲線的例子:

import numpy as np

import matplotlib.pyplot as plt

x = np.arange(0, 2 * np.pi, 0.01)

y = np.sin(x)

plt.plot(x,y,'r:D')

plt.show()

給圖加點名稱,坐標(biāo)軸提示信息如下綠色部分代碼,運行結(jié)果如上圖中間:

import numpy as np

import matplotlib.pyplot as plt

x = np.arange(0, 2 * np.pi, 0.01)

y = np.sin(x)

plt.plot(x,y,'r:D')

plt.xlabel("x軸標(biāo)簽")

plt.ylabel("y軸標(biāo)簽")

plt.title("正弦曲線sin(x)")

plt.show()

?

中文沒能顯示出來,Why?...... 接著往下看吧!

2.pyplot的中文顯示

pyplot并不默認支持中文顯示,需要rcParams修改字體實現(xiàn)。兩種方式:全局設(shè)置中文字體和局部設(shè)置中文字體。上圖加上下面綠色部分代碼,繪制圖形為上圖右側(cè)部分,漢字顯示正常。

?

import numpy as np

import matplotlib.pyplot as plt

plt.rcParams['font.family']='SimHei'???? # 'SimHei'是黑體

x = np.arange(0, 2 * np.pi, 0.01)

y = np.sin(x)

plt.plot(x,y,'r:D')

plt.xlabel("x軸標(biāo)簽")

plt.ylabel("y軸標(biāo)簽")

plt.title("正弦曲線sin(x)")

plt.show()

?

但是細心的你會發(fā)現(xiàn)怎么縱軸上的負號沒有顯示出來呢,百度一下,增加下面第一行綠色部分代碼即可,第二行綠色部分代碼是將圖形保存至文件,下圖左側(cè)就是從文件sinx.png中復(fù)制過來的圖像。

?

import numpy as np

import matplotlib.pyplot as plt

plt.rcParams['axes.unicode_minus']=False

plt.rcParams['font.family']='SimHei'

plt.rcParams['font.size']=16

x = np.arange(0, 2 * np.pi, 0.01)

y = np.sin(x)

plt.plot(x,y,'r:D')

plt.xlabel("x軸標(biāo)簽")

plt.ylabel("y軸標(biāo)簽")

plt.title("正弦曲線sin(x)")

plt.savefig('sinx',dpi=600)

plt.show()

下面我們來解釋一下rcParams。

rcParams的屬性

屬性????????????????????????說明

'font.family'????????????用于顯示字體的名字

'font.style'????????????????字體風(fēng)格,正常'normal'或斜體'italic'

'font.size'? ?????????????字體大小,整數(shù)字號或者'large','x-small'

中文字體的種類

rcParams['font.family']

中文字體????????????說明

'SimHei'????????????中文黑體

'Kaiti'? ?????????????????中文楷體

'LiSu'??????????????? ?中文隸書

'FangSong'? ? ? ? ? ? ? ? ?中文仿宋

'YouYuan'? ? ? ? ? ? ? ? ?中文幼圓

STSong? ? ? ? ? ? ? ? ?華文宋體

上面所有中文都按照統(tǒng)一的字體顯示,有時候這不是我們想要的結(jié)果。所以提供第二種方法為局部設(shè)置中文字體,在有中文輸出的地方,增加一個屬性:fontproperties,上圖右側(cè)為此種方式結(jié)果,代碼如下,綠色部分為修改行。

import numpy as np

import matplotlib.pyplot as plt

plt.rcParams['axes.unicode_minus']=False

x = np.arange(0, 2 * np.pi, 0.01)

y = np.sin(x)

plt.plot(x,y,'r:D')

plt.xlabel("x軸標(biāo)簽", fontproperties='SimHei',fontsize=16)

plt.ylabel("y軸標(biāo)簽", fontproperties='SimHei',fontsize=16)

plt.title("正弦曲線sin(x)", fontproperties='Kaiti',fontsize=20)

plt.savefig('sinx',dpi=600)

plt.show()

?

下面例子參考網(wǎng)絡(luò)資料,大家可以自己學(xué)習(xí),修改代碼,畫出自己的圖形。


第十章 第三方庫-Matplotlib-1的評論 (共 條)

分享到微博請遵守國家法律
二连浩特市| 阿坝县| 商丘市| 通海县| 凤冈县| 沂南县| 新津县| 平顺县| 镇远县| 阿拉尔市| 宜兰市| 聂荣县| 山东省| 临沂市| 南木林县| 泗阳县| 达孜县| 九台市| 锡林浩特市| 无锡市| 沁源县| 天峻县| 崇礼县| 华容县| 穆棱市| 崇信县| 汤原县| 丰宁| 禄丰县| 吴堡县| 长阳| 拜泉县| 漯河市| 芒康县| 湛江市| 黄陵县| 广水市| 顺义区| 泸州市| 永嘉县| 信宜市|