日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

Python數(shù)據(jù)分析matplotlib折線圖案例處理_python

作者:阿呆小記??????? ? 更新時間: 2022-10-12 編程語言

前言

以下分享折線圖小案例,matplotlib還可以進行多種圖形的繪制,可以進入官網(wǎng)?https://matplotlib.org/gallery/index.html,點擊examples,如需學習,選擇要學習的圖進入,里面包含有代碼

python之matplotlib使用系統(tǒng)字體

1.導(dǎo)包from matplotlib.font_manager import FontProperties2.調(diào)用本機字體庫設(shè)置字體my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\msyh.ttc")

其中,msyh.ttc是自己電腦中的字體,如何找到呢?

在路徑C:\Windows\Fonts的文件夾中,有如下字體,如下圖:

繪圖的時候,直接調(diào)用就好

??plt.xticks(list(x)[::3],_xtick_labels[::3],rotatinotallow=45,fnotallow=my_font)??

實例1:溫度變化統(tǒng)計

#如果列表a便是10點到12點的每一分鐘的氣溫,繪制折線圖
# a=[random.randint(20,35)for i in range(120)]
#解決中文不顯示問題
#fc-list -->查看支持的字體
#fc-list :lang=zh -->查看支持的中文(冒號前有空格)

from matplotlib import pyplot as plt
import random
import matplotlib
from matplotlib import font_manager

#1.windows\linux設(shè)置字體
#font = {'family' : 'MicroSoft YaHei',
# 'weight' : 'bold',
# 'size' : 'larger'}
#matplotlib.rc("font",**font) #查看源碼ctrl+b

#2.另一種設(shè)置字體方式
my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\msyh.ttc")

#定義x、y軸
x = range(0,120)
y = [random.randint(20,35) for i in range(120)]

#修改大小尺寸
plt.figure(figsize=(20,8),dpi=80)

#繪制
plt.plot(x,y)

#調(diào)整x軸的刻度
_xtick_labels = ["10點{}分".format(i) for i in range(60)]
_xtick_labels += ["11點{}分".format(i) for i in range(60)]

#取適當步長,將數(shù)字與x軸字符串對應(yīng),使得數(shù)據(jù)長度保持一致
plt.xticks(list(x)[::3],_xtick_labels[::3],rotation=45,fontproperties=my_font) #將x軸字符串旋轉(zhuǎn)45度

#添加描述信息
plt.xlabel("時間",fontproperties=my_font)
plt.ylabel("溫度 單位(°c)",fontproperties=my_font)
plt.title("10點到12點每分鐘的氣溫變化情況",fontproperties=my_font)

#顯示圖示
plt.show()

實例2:交友數(shù)量折線圖

#你與朋友從11到30歲交的朋友數(shù),并比較
from matplotlib import pyplot as plt
from matplotlib import font_manager

#設(shè)置字體
my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\msyh.ttc")

#定義坐標軸
x = range(11,31)
y_1 = [2,3,3,4,6,5,6,5,8,5,4,6,4,4,4,4,4,3,3,3]
y_2 = [1,4,5,5,6,4,5,5,4,7,6,5,3,2,2,6,1,2,6,4]

#設(shè)置圖形大小
plt.figure(figsize=(20,8),dpi=80)

#繪制
plt.plot(x,y_1)
plt.plot(x,y_2)

#繪制x\y軸刻度,添加描述信息
_xtick_labels = ["{}歲".format(i) for i in x]
plt.xticks(x,_xtick_labels,fontproperties=my_font)
plt.yticks(range(0,10))
plt.xlabel("年齡",fontproperties=my_font)
plt.ylabel("每年交到的新朋友數(shù)",fontproperties=my_font)
plt.title("與朋友每年新交到朋友數(shù)量對比圖",fontproperties=my_font)

#繪制網(wǎng)格,并設(shè)置透明度
plt.grid(alpha=0.3)

#展示
plt.show()

1.這個案例中涉及到一表多圖,其實很簡單,與單圖設(shè)計一樣,只要再添加一組y軸坐標。
這里x軸是共有的,不需要另行設(shè)置。
#定義坐標軸?x = range(11,31)y_1 = [2,3,3,4,6,5,6,5,8,5,4,6,4,4,4,4,4,3,3,3]y_2 = [1,4,5,5,6,4,5,5,4,7,6,5,3,2,2,6,1,2,6,4]#繪制plt.plot(x,y_1)plt.plot(x,y_2)

2.繪制網(wǎng)格及設(shè)置透明度

plt.grid(alpha=0.3)

3.但是當你給別人展示時,并沒有源碼,別人很難分清哪個曲線是你的,哪個是你朋友的,這時就需要我們添加圖例,并且要注意的是:

通常我們設(shè)置中文字體是對應(yīng)方法后添加fontproperties=my_font但是在添加圖例中用到的是prop=my_font

如圖所示:

4.更改圖例位置

由于初學,很多方法我們還不是很清楚,所以我們要學會查看源碼(選中方法名+ctrl+b)

再使用一次,進入后會找到有關(guān)參數(shù)loc(location)的描述,我們設(shè)置loc=“upper left”,結(jié)果如圖所示

5.設(shè)置曲線顏色,線條樣式

#繪制,添加顏色
plt.plot(x,y_1,label="自己",color="y")
plt.plot(x,y_2,label="朋友",color="cyan")

2

#繪制,添加線條類型
plt.plot(x,y_1,label="自己",color="purple",linestyle='-.')
plt.plot(x,y_2,label="朋友",color="cyan",linestyle='--')

原文鏈接:https://blog.51cto.com/u_15749390/5577213

欄目分類
最近更新