最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python直接使用plot()函數(shù)畫圖的方法實(shí)例

 更新時(shí)間:2022年05月07日 10:53:26   作者:Sheenky  
Python非常簡(jiǎn)單而又非常強(qiáng)大,它的功能之一就是畫出漂亮的圖表,實(shí)現(xiàn)數(shù)據(jù)的可視化,下面這篇文章主要給大家介紹了關(guān)于Python直接使用plot()函數(shù)畫圖的相關(guān)資料,需要的朋友可以參考下

一、plot()函數(shù)的認(rèn)識(shí)

在使用Python進(jìn)行數(shù)據(jù)可視化編程中matplotlib庫是我們用來對(duì)數(shù)據(jù)進(jìn)行畫圖常用的第三方庫。其中含有各類函數(shù)也就是不同類型的圖形,要使用matplotlib庫中的函數(shù)就需要了解函數(shù)所需要數(shù)據(jù)的格式,這也是我們學(xué)習(xí)matplotlib庫的重點(diǎn)。

直接使用plot()函數(shù)畫圖,是對(duì)于一般的簡(jiǎn)單數(shù)據(jù)。我們可以采用直接調(diào)用plot()函數(shù)對(duì)列表數(shù)據(jù)進(jìn)行直接畫圖。初期學(xué)習(xí)直接使用plot()函數(shù)能便于我們對(duì)后面圖形學(xué)習(xí)奠定函數(shù)的參數(shù)及基礎(chǔ)。

matplotlib圖的組成:

  • Figure (畫布)
  • Axes (坐標(biāo)系)
  • Axis (坐標(biāo)軸)
  • 圖形(plot(),scatter(),bar(),...)
  • Title, Labels, ......

直接是用plot()函數(shù)畫圖如法如下:

plt.plot(x, y, fmt='xxx', linestyle=, marker=, color=, linewidth=, markersize=, label=, )

其中x,y代表橫縱坐標(biāo),fmt = '#color#linestyle#marker'即代表各類參數(shù)。

(1)linestyle:此字段是線的樣式,參數(shù)形式:字符串

linestyle(線的樣式)

linestyle(線的樣式)
linestyle參數(shù)線形
'-'實(shí)線
'--'虛線
'-.'點(diǎn)劃線
':'點(diǎn)虛線
' '無線

(2)linewidth:此參數(shù)是線的粗細(xì),粗細(xì)程度和所定數(shù)值大小有關(guān),參數(shù)形式:數(shù)值

(3)marker:點(diǎn)的樣式,字符串

marker(點(diǎn)的樣式)

marker(點(diǎn)的樣式)
marker標(biāo)記點(diǎn)
'.'
','像素
'^' 'v' '>' '<'上下左右三角形
'1' '2' '3' '4'上下左右三叉線
'o'圓形
's' 'D'方形
'p'五邊形
'h' 'H'六邊形
'*'五角星
'+' 'x'十字交叉
'_'橫線
''

(4)markersize:點(diǎn)的大小,參數(shù)形式:數(shù)值

(5)color:調(diào)節(jié)線條還有點(diǎn)的顏色 ,字符串,參數(shù)形式字符串

color(點(diǎn)、線顏色)

color(點(diǎn)、線顏色)
字符串color
'r'
'g'
'b'藍(lán)
'y'
'c'
'm'
'k'
'w'

此處顏色參數(shù)還可以有二進(jìn)制,十進(jìn)制等表示方法,同時(shí)對(duì)于顏色,RGB是三原色

(6)label:圖例,legend文字

二、plot()函數(shù)基本運(yùn)用

使用plot()函數(shù)時(shí)需要導(dǎo)入對(duì)應(yīng)的庫,導(dǎo)入庫后我們?cè)谖从袛?shù)據(jù)的情況下直接畫圖,直接畫圖會(huì)隱式創(chuàng)建Figure,Axes對(duì)象。

import matplotlib.pyplot as pltplt.plot()

 下面通過構(gòu)造數(shù)據(jù)繪制簡(jiǎn)單圖形

首先數(shù)據(jù)構(gòu)造,設(shè)置參數(shù),參數(shù)也可以在將數(shù)據(jù)填入plot()函數(shù)的時(shí)候設(shè)置。

# 導(dǎo)入包
import matplotlib.pyplot as plt
import numpy as np
# 構(gòu)造數(shù)據(jù)
# 位置 (2維:x,y一一對(duì)應(yīng))
x = np.linspace(0, 2 * np.pi, 200)  # 從0到2pi的200個(gè)值
y = np.sin(x)                       # 從sin(0)到sin(2pi)的200個(gè)值
# 顏色(0維)
c = 'red'
c = 'r'
c = '#FF0000'
# 大?。?維): 線寬
lw = 1

畫出圖形

# 生成一個(gè)Figure畫布和一個(gè)Axes坐標(biāo)系
fig, ax = plt.subplots()
# 在生成的坐標(biāo)系下畫折線圖
ax.plot(x, y, c, linewidth=lw)
# 顯示圖形
plt.show()

圖形展示:

給定兩組數(shù)據(jù),建立y與x的關(guān)系試,使用plot函數(shù)進(jìn)行畫圖,本次畫圖線條選用點(diǎn)虛線形式,粗細(xì)選用1,點(diǎn)選用方形,點(diǎn)大小選用值為10,圖例為‘1234’

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,linestyle=':', linewidth=1, marker='d', markersize=10, label='1234')
plt.legend()

作出圖片如下;

 下面我們引用numpy的linspace函數(shù)生創(chuàng)建均勻分布序列,然后對(duì)x,y建立數(shù)值關(guān)系,由此來創(chuàng)建圖畫。

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-100,100,10)
y = x**2 + 2*x +1
plt.plot(x,y,'g-.o')

作出如下圖案,由此可見,我們對(duì)于圖形的設(shè)置方面,在我們熟練以后如果沒有粗細(xì)的設(shè)置可以直接縮減再一個(gè)字符串里面

以上都是簡(jiǎn)單圖形的講解,我們現(xiàn)在通過一個(gè)簡(jiǎn)單的對(duì)數(shù)據(jù)DataFrame進(jìn)行作圖,在往后的數(shù)據(jù)可視化中我們需要對(duì)數(shù)據(jù)進(jìn)行處理后再進(jìn)行可視化。下面我們通過正、余弦函數(shù)進(jìn)行作圖。

#導(dǎo)入包
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
 
#使用linspace()方法構(gòu)成數(shù)據(jù)
x = np.linspace(0, 2 * np.pi, 50)  # 
y1 = np.sin(x)
y2 = np.cos(x)
#轉(zhuǎn)化數(shù)據(jù)形式
df = pd.DataFrame([x,y1,y2]).T
#對(duì)列重新命名
df.columns = ['x','sin(x)','cos(x)']
#數(shù)據(jù)寫入圖像,命名圖例
plt.plot(df['x'],df['sin(x)'],label='sin(x)')
plt.plot(df['x'],df['cos(x)'],label='cos(x)')
plt.legend()

我們通過numpy的linspace方法生成數(shù)據(jù)再通過pandas對(duì)數(shù)據(jù)進(jìn)行DataFrame化再帶入plot()函數(shù),此處需要講的就是圖例的命名方法,通過在函數(shù)中寫入label參數(shù),確定圖例的標(biāo)簽,再通過legend()函數(shù)生成圖例,在后續(xù)的學(xué)習(xí)中也會(huì)講到圖例的位置、形式等的運(yùn)用。

三、plot()函數(shù)數(shù)據(jù)可視化畫圖以及圖元基本參數(shù)設(shè)置

通過繪制世界人口變化曲線圖了解基本圖元參數(shù)設(shè)置,本次繪圖過程主要是先通過對(duì)人口數(shù)據(jù)導(dǎo)入,了解數(shù)據(jù)構(gòu)造,再進(jìn)配置畫圖參數(shù)最后完成圖形的制作,其中基本的圖元參數(shù)用于別的圖形也適用,在這兒學(xué)會(huì)了我們只需要了解數(shù)據(jù)結(jié)構(gòu),構(gòu)造成圖形所要的數(shù)據(jù)結(jié)構(gòu)就可以就行畫出自己想要的圖形。

首先進(jìn)行數(shù)據(jù)導(dǎo)入,了解數(shù)據(jù)結(jié)構(gòu)形式。為了學(xué)習(xí)方便,選用jupyter notebook進(jìn)行可視化圖形講解。

import pandas as pd
datafile = r'world_population.txt'  # 打開文件
df = pd.read_csv(datafile)  #讀取數(shù)據(jù)
df.head()#展示前面部分?jǐn)?shù)據(jù)

以下就是基本的數(shù)據(jù)樣式,由年份和人口數(shù)量組成

 這里做了基本的圖元設(shè)計(jì),也就是對(duì)于畫布的設(shè)置,前面我們所學(xué)函數(shù)參數(shù)都是對(duì)于圖形中間的設(shè)置,我們構(gòu)成一個(gè)可視化界面是通過畫布+畫中圖形樣式組成一個(gè)完整的可視化界面。

畫布界面有畫布大小,畫布像素,畫布界面,畫布邊框等設(shè)置。

import matplotlib.pyplot as plt
# 畫布
fig = plt.figure(figsize=(6,4),  # inches
                 dpi=120, # dot-per-inch
                 facecolor='#BBBBBB',
                 frameon=True, # 畫布邊框
                )  
plt.plot(df['year'],df['population'])
 
# 標(biāo)題
plt.title("1960-2009 World Population")

構(gòu)成一個(gè)完整的可視化圖像除了圖例還有圖像的標(biāo)題,我們可以通過title()方法設(shè)置英文標(biāo)題,中文標(biāo)題要通過以下代碼才能實(shí)現(xiàn),因此我們?nèi)绻亲鲋形捻?xiàng)目在導(dǎo)入包以后就可以寫上設(shè)置中文代碼的代碼串。

# 設(shè)置中文字體
plt.rcParams['font.sans-serif'] = 'SimHei'  # 設(shè)置字體為簡(jiǎn)黑(SimHei)
plt.rcParams['font.sans-serif'] = 'FangSong'  # 設(shè)置字體為仿宋(FangSong)

 當(dāng)然,除了這種比較簡(jiǎn)單的圖形之外我們還能對(duì)圖形進(jìn)行優(yōu)化設(shè)置,將數(shù)據(jù)顯示的更加的精美和美觀,對(duì)圖形優(yōu)化便于實(shí)際報(bào)告中的演示也是我們現(xiàn)在必不可少的的一環(huán)。

import matplotlib.pyplot as plt
 
# 設(shè)置中文字體
plt.rcParams['axes.unicode_minus'] = False    # 不使用中文減號(hào)
plt.rcParams['font.sans-serif'] = 'FangSong'  # 設(shè)置字體為仿宋(FangSong)
 
# 畫布
fig = plt.figure(figsize=(6,4),  # inches
                 dpi=120, # dot-per-inch
                 facecolor='#BBBBBB',
                 frameon=True, # 畫布邊框
                )  
plt.plot(df['year'],df['population'],'b:o',label='人口數(shù)')
 
# 中文標(biāo)題
plt.title("1960-2009 世界人口")
 
# 字體字典
font_dict=dict(fontsize=8,
              color='k',
              family='SimHei',
              weight='light',
              style='italic',
              )
 
# X軸標(biāo)簽
plt.xlabel("年份", loc='center', fontdict=font_dict)   # loc: 左中右 left center right
 
# Y軸標(biāo)簽
plt.ylabel("人口數(shù)",loc='top', fontdict=font_dict)  # loc: 上中下 top center bottom
 
# X軸范圍
plt.xlim((2000,2010))  # X軸的起點(diǎn)和終點(diǎn)
 
# Y軸范圍
plt.ylim(6e9,7e9) # Y軸的起點(diǎn)和終點(diǎn)
 
# X軸刻度
plt.xticks(np.arange(2000,2011))
 
# X軸刻度
plt.yticks(np.arange(6e9,7e9+1e8,1e8))
 
# 圖例
plt.legend()
# plt.legend(labels=['人口'])
 
# 網(wǎng)格線
plt.grid(axis='y')  # axis: 'both','x','y'

 上述代碼,對(duì)x軸,y軸的刻度、標(biāo)簽、字體進(jìn)行定義,對(duì)圖例、網(wǎng)格線等也做出了參數(shù)的設(shè)置,最后做出的圖形如下圖:

總結(jié) 

到此這篇關(guān)于Python直接使用plot()函數(shù)畫圖的文章就介紹到這了,更多相關(guān)Python plot()函數(shù)畫圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python將圖片轉(zhuǎn)為矢量圖的方法步驟

    python將圖片轉(zhuǎn)為矢量圖的方法步驟

    這篇文章主要介紹了python將圖片轉(zhuǎn)為矢量圖的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • python關(guān)于矩陣重復(fù)賦值覆蓋問題的解決方法

    python關(guān)于矩陣重復(fù)賦值覆蓋問題的解決方法

    這篇文章主要介紹了python關(guān)于矩陣重復(fù)賦值覆蓋問題的解決方法,涉及Python深拷貝與淺拷貝相關(guān)操作與使用技巧,需要的朋友可以參考下
    2019-07-07
  • 利用Python實(shí)現(xiàn)Picgo圖床工具

    利用Python實(shí)現(xiàn)Picgo圖床工具

    這篇文章主要介紹了如何利用Python實(shí)現(xiàn)Picgo圖床工具,PyPicGo?是一款圖床工具,是PicGo是Python版實(shí)現(xiàn),并支持各種插件自定義插件,目前PyPicGo自帶了gitee、github、SM.MS和七牛云圖傳,以及rename、notify和typora等插件,下面來看文章內(nèi)容介紹,需要的朋友可以參考一下
    2021-11-11
  • 使用tensorflow根據(jù)輸入更改tensor shape

    使用tensorflow根據(jù)輸入更改tensor shape

    這篇文章主要介紹了使用tensorflow根據(jù)輸入更改tensor shape,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python自動(dòng)化運(yùn)維和部署項(xiàng)目工具Fabric使用實(shí)例

    Python自動(dòng)化運(yùn)維和部署項(xiàng)目工具Fabric使用實(shí)例

    Fabric是一個(gè)Python庫,只要目標(biāo)機(jī)器支持ssh訪問,就可以借助fabric來進(jìn)行遠(yuǎn)程操作(如在host1上對(duì)host2遠(yuǎn)程運(yùn)行shell命令),顯然,由于fabric是個(gè)Python package,故其它Python package都可以被import到fabric特有的fabfile.py腳本中
    2016-09-09
  • Python使用PyQt5實(shí)現(xiàn)與DeepSeek聊天的圖形化小軟件

    Python使用PyQt5實(shí)現(xiàn)與DeepSeek聊天的圖形化小軟件

    在?PyQt5?中,菜單欄(QMenuBar)、工具欄(QToolBar)和狀態(tài)欄(QStatusBar)是?QMainWindow?提供的標(biāo)準(zhǔn)控件,用于幫助用戶更好地與應(yīng)用程序交互,所以本文給大家介紹了Python使用PyQt5實(shí)現(xiàn)與DeepSeek聊天的圖形化小軟件,需要的朋友可以參考下
    2025-03-03
  • python 把列表轉(zhuǎn)化為字符串的方法

    python 把列表轉(zhuǎn)化為字符串的方法

    今天小編就為大家分享一篇python 把列表轉(zhuǎn)化為字符串的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • 用ldap作為django后端用戶登錄驗(yàn)證的實(shí)現(xiàn)

    用ldap作為django后端用戶登錄驗(yàn)證的實(shí)現(xiàn)

    這篇文章主要介紹了用ldap作為django后端用戶登錄驗(yàn)證的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • django模板語法學(xué)習(xí)之include示例詳解

    django模板語法學(xué)習(xí)之include示例詳解

    寫過 Web 程序的都對(duì) include 包含文件很熟悉,那么在 Django,include 又是怎么一個(gè)機(jī)制呢?下面這篇文章主要給大家介紹了關(guān)于django模板語法學(xué)習(xí)之include的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-12-12
  • Python中Django框架下的staticfiles使用簡(jiǎn)介

    Python中Django框架下的staticfiles使用簡(jiǎn)介

    這篇文章主要介紹了Python中Django框架下的staticfiles使用簡(jiǎn)介,staticfiles是一個(gè)幫助Django管理靜態(tài)資源的工具,需要的朋友可以參考下
    2015-05-05

最新評(píng)論

金门县| 疏勒县| 霍林郭勒市| 佛冈县| 和龙市| 方山县| 潞城市| 济阳县| 林西县| 太保市| 南昌县| 饶平县| 莱阳市| 蓝山县| 镇雄县| 沂南县| 平邑县| 永康市| 永城市| 监利县| 天气| 运城市| 获嘉县| 通江县| 富源县| 裕民县| 富民县| 崇左市| 南丰县| 吉林市| 怀来县| 子长县| 大埔县| 河池市| 闽侯县| 乾安县| 望城县| 安顺市| 商城县| 安宁市| 沙湾县|