當前位置:首頁 » 編程語言 » python中plot函數

python中plot函數

發布時間: 2023-01-05 04:21:03

㈠ 用python設置matplotlib.plot的坐標軸刻度間隔以及刻度范圍

轉自 跳轉鏈接
一、用默認設置繪制折線圖

import matplotlib.pyplot as plt

x_values=list(range(11))

#x軸的數字是0到10這11個整數

y_values=[x**2 for x in x_values]

#y軸的數字是x軸數字的平方

plt.plot(x_values,y_values,c='green')

#用plot函數繪制折線圖,線條顏色設置為綠色

plt.title('Squares',fontsize=24)

#設置圖表標題和標題字型大小

plt.tick_params(axis='both',which='major',labelsize=14)

#設置刻度的字型大小

plt.xlabel('Numbers',fontsize=14)

#設置x軸標簽及其字型大小

plt.ylabel('Squares',fontsize=14)

#設置y軸標簽及其字型大小

plt.show()

#顯示圖表

製作出圖表

我們希望x軸的刻度是0,1,2,3,4……,y軸的刻度是0,10,20,30……,並且希望兩個坐標軸的范圍都能再大一點,所以我們需要手動設置。

二、手動設置坐標軸刻度間隔以及刻度范圍

import matplotlib.pyplot as plt

from matplotlib.pyplot import MultipleLocator

#從pyplot導入MultipleLocator類,這個類用於設置刻度間隔

x_values=list(range(11))

y_values=[x**2 for x in x_values]

plt.plot(x_values,y_values,c='green')

plt.title('Squares',fontsize=24)

plt.tick_params(axis='both',which='major',labelsize=14)

plt.xlabel('Numbers',fontsize=14)

plt.ylabel('Squares',fontsize=14)

x_major_locator=MultipleLocator(1)

#把x軸的刻度間隔設置為1,並存在變數里

y_major_locator=MultipleLocator(10)

#把y軸的刻度間隔設置為10,並存在變數里

ax=plt.gca()

#ax為兩條坐標軸的實例

ax.xaxis.set_major_locator(x_major_locator)

#把x軸的主刻度設置為1的倍數

ax.yaxis.set_major_locator(y_major_locator)

#把y軸的主刻度設置為10的倍數

plt.xlim(-0.5,11)

#把x軸的刻度范圍設置為-0.5到11,因為0.5不滿一個刻度間隔,所以數字不會顯示出來,但是能看到一點空白

plt.ylim(-5,110)

#把y軸的刻度范圍設置為-5到110,同理,-5不會標出來,但是能看到一點空白

plt.show()

繪制結果

㈡ Python實操:手把手教你用Matplotlib把數據畫出來

作者:邁克爾·貝耶勒(Michael Beyeler)

如需轉載請聯系華章 科技

如果已安裝Anaconda Python版本,就已經安裝好了可以使用的 Matplotlib。否則,可能要訪問官網並從中獲取安裝說明:

http://matplotlib.org

正如使用np作為 NumPy 的縮寫,我們將使用一些標準的縮寫來表示 Matplotlib 的引入:

在本書中,plt介面會被頻繁使用。

讓我們創建第一個繪圖。

假設想要畫出正弦函數sin(x)的線性圖。得到函數在x坐標軸上0≤x<10內所有點的值。我們將使用 NumPy 中的 linspace 函數來在x坐標軸上創建一個從0到10的線性空間,以及100個采樣點:

可以使用 NumPy 中的sin函數得到所有x點的值,並通過調用plt中的plot函數把結果畫出來:

你親自嘗試了嗎?發生了什麼嗎?有沒有什麼東西出現?

實際情況是,取決於你在哪裡運行腳本,可能無法看到任何東西。有下面幾種可能性:

1. 從.py腳本中繪圖

如果從一個腳本中運行 Matplotlib,需要加上下面的這行調用:

在腳本末尾調用這個函數,你的繪圖就會出現!

2. 從 IPython shell 中繪圖

這實際上是互動式地執行Matplotlib最方便的方式。為了讓繪圖出現,需要在啟動 IPython 後使用所謂的%matplotlib魔法命令。

接下來,無須每次調用plt.show()函數,所有的繪圖將會自動出現。

3. 從 Jupyter Notebook 中繪圖

如果你是從基於瀏覽器的 Jupyter Notebook 中看這段代碼,需要使用同樣的%matplotlib魔法命令。然而,也可以直接在notebook中嵌入圖形,這會有兩種輸出選項:

在本書中,將會使用inline選項:

現在再次嘗試一下:

上面的命令會得到下面的繪圖輸出結果:

如果想要把繪圖保存下來留作以後使用,可以直接在 IPython 或者 Jupyter Notebook 使用下面的命令保存:

僅需要確保你使用了支持的文件後綴,比如.jpg、.png、.tif、.svg、.eps或者.pdf。

作為本章最後一個測試,讓我們對外部數據集進行可視化,比如scikit-learn中的數字數據集。

為此,需要三個可視化工具:

那麼開始引入這些包吧:

第一步是載入實際數據:

如果沒記錯的話,digits應該有兩個不同的數據域:data域包含了真正的圖像數據,target域包含了圖像的標簽。相對於相信我們的記憶,我們還是應該對digits稍加 探索 。輸入它的名字,添加一個點號,然後按Tab鍵:digits.<TAB>,這個操作將向我們展示digits也包含了一些其他的域,比如一個名為images的域。images和data這兩個域,似乎簡單從形狀上就可以區分。

兩種情況中,第一維對應的都是數據集中的圖像數量。然而,data中所有像素都在一個大的向量中排列,而images保留了各個圖像8×8的空間排列。

因此,如果想要繪制出一副單獨的圖像,使用images將更加合適。首先,使用NumPy的數組切片從數據集中獲取一幅圖像:

這里是從1797個元素的數組中獲取了它的第一行數據,這行數據對應的是8×8=64個像素。下面就可以使用plt中的imshow函數來繪制這幅圖像:

上面的命令得到下面的輸出:

此外,這里也使用cmap參數指定了一個顏色映射。默認情況下,Matplotlib 使用MATLAB默認的顏色映射jet。然而,在灰度圖像的情況下,gray顏色映射更有效。

最後,可以使用plt的subplot函數繪制全部數字的樣例。subplot函數與MATLAB中的函數一樣,需要指定行數、列數以及當前的子繪圖索引(從1開始計算)。我們將使用for 循環在數據集中迭代出前十張圖像,每張圖像都分配到一個單獨的子繪圖中。

這會得到下面的輸出結果:

關於作者:Michael Beyeler,華盛頓大學神經工程和數據科學專業的博士後,主攻仿生視覺計算模型,用以為盲人植入人工視網膜(仿生眼睛),改善盲人的視覺體驗。 他的工作屬於神經科學、計算機工程、計算機視覺和機器學習的交叉領域。同時他也是多個開源項目的積極貢獻者。

本文摘編自《機器學習:使用OpenCV和Python進行智能圖像處理》,經出版方授權發布。

㈢ python繪圖篇

1,xlable,ylable設置x,y軸的標題文字。

2,title設置標題。

3,xlim,ylim設置x,y軸顯示範圍。

plt.show()顯示繪圖窗口,通常情況下,show()會阻礙程序運行,帶-wthread等參數的環境下,窗口不會關閉。

plt.saveFig()保存圖像。

面向對象繪圖

1,當前圖表和子圖可以用gcf(),gca()獲得。

subplot()繪制包含多個圖表的子圖。

configure subplots,可調節子圖與圖表邊框距離。

可以通過修改配置文件更改對象屬性。

圖標顯示中文

1,在程序中直接指定字體。

2, 在程序開始修改配置字典reParams.

3,修改配置文件。

Artist對象

1,圖標的繪制領域。

2,如何在FigureCanvas對象上繪圖。

3,如何使用Renderer在FigureCanvas對象上繪圖。

FigureCanvas和Render處理底層圖像操作,Artist處理高層結構。

分為簡單對象和容器對象,簡單的Aritist是標準的繪圖元件,例如Line 2D,Rectangle,Text,AxesImage等,而容器類型包含許多簡單的的 Aritist對象,使他們構成一個整體,例如Axis,Axes,Figure等。

直接創建Artist對象進項繪圖操作步奏:

1,創建Figure對象(通過figure()函數,會進行許多初始化操作,不建議直接創建。)

2,為Figure對象創建一個或多個Axes對象。

3,調用Axes對象的方法創建各類簡單的Artist對象。

Figure容器

如何找到指定的Artist對象。

1,可調用add_subplot()和add_axes()方法向圖表添加子圖。

2,可使用for循環添加柵格。

3,可通過transform修改坐標原點。

Axes容器

1,patch修改背景。

2,包含坐標軸,坐標網格,刻度標簽,坐標軸標題等內容。

3,get_ticklabels(),,get-ticklines獲得刻度標簽和刻度線。

1,可對曲線進行插值。

2,fill_between()繪制交點。

3,坐標變換。

4,繪制陰影。

5,添加註釋。

1,繪制直方圖的函數是

2,箱線圖(Boxplot)也稱箱須圖(Box-whisker Plot),是利用數據中的五個統計量:最小值、第一四分位

數、中位數、第三四分位數與最大值來描述數據的一種方法,它可以粗略地看出數據是否具有對稱性以及分

布的分散程度等信息,特別可以用於對幾個樣本的比較。

3,餅圖就是把一個圓盤按所需表達變數的觀察數劃分為若干份,每一份的角度(即面積)等價於每個觀察

值的大小。

4,散點圖

5,QQ圖

低層繪圖函數

類似於barplot(),dotchart()和plot()這樣的函數採用低層的繪圖函數來畫線和點,來表達它們在頁面上放置的位置以及其他各種特徵。

在這一節中,我們會描述一些低層的繪圖函數,用戶也可以調用這些函數用於繪圖。首先我們先講一下R怎麼描述一個頁面;然後我們講怎麼在頁面上添加點,線和文字;最後講一下怎麼修改一些基本的圖形。

繪圖區域與邊界

R在繪圖時,將顯示區域劃分為幾個部分。繪制區域顯示了根據數據描繪出來的圖像,在此區域內R根據數據選擇一個坐標系,通過顯示出來的坐標軸可以看到R使用的坐標系。在繪制區域之外是邊沿區,從底部開始按順時針方向分別用數字1到4表示。文字和標簽通常顯示在邊沿區域內,按照從內到外的行數先後顯示。

添加對象

在繪制的圖像上還可以繼續添加若干對象,下面是幾個有用的函數,以及對其功能的說明。

•points(x, y, ...),添加點

•lines(x, y, ...),添加線段

•text(x, y, labels, ...),添加文字

•abline(a, b, ...),添加直線y=a+bx

•abline(h=y, ...),添加水平線

•abline(v=x, ...),添加垂直線

•polygon(x, y, ...),添加一個閉合的多邊形

•segments(x0, y0, x1, y1, ...),畫線段

•arrows(x0, y0, x1, y1, ...),畫箭頭

•symbols(x, y, ...),添加各種符號

•legend(x, y, legend, ...),添加圖列說明

㈣ Python中的plt.plot()函數傳入一個一維數組前為什麼不用傳入x軸的值就可以畫出正確的圖像代碼結果如下

plt.plot支持傳入一個元組或者列表,另一個維度按照默認排列。

㈤ Python設置matplotlib.plot的坐標軸刻度間隔以及刻度范圍

import matplotlib.pyplot as plt

x_values=list(range(11))   #x軸的數字是0到10這11個整數

y_values=[x**2forx inx_values]   #y軸的數字是x軸數字的平方

plt.plot(x_values,y_values,c='green')  #用plot函數繪制折線圖,線條顏色設置為綠色

plt.title('Squares',fontsize=24)   #設置圖表標題和標題字型大小

plt.tick_params(axis='both',which='major',labelsize=14) #設置刻度的字型大小

plt.xlabel('Numbers',fontsize=14)  #設置x軸標簽及其字型大小

plt.ylabel('Squares',fontsize=14)  #設置y軸標簽及其字型大小

plt.show()

import matplotlib.pyplot as plt

from matplotlib.pyplot import MultipleLocator

#從pyplot導入MultipleLocator類,這個類用於設置刻度間隔

x_values=list(range(11))

y_values=[x**2forx inx_values]

plt.plot(x_values,y_values,c='green')

plt.title('Squares',fontsize=24)

plt.tick_params(axis='both',which='major',labelsize=14)

plt.xlabel('Numbers',fontsize=14)

plt.ylabel('Squares',fontsize=14)

x_major_locator=MultipleLocator(1) #把x軸的刻度間隔設置為1,並存在變數里

y_major_locator=MultipleLocator(10) #把y軸的刻度間隔設置為10,並存在變數里

ax=plt.gca() #ax為兩條坐標軸的實例

ax.xaxis.set_major_locator(x_major_locator) #把x軸的主刻度設置為1的倍數

ax.yaxis.set_major_locator(y_major_locator) #把y軸的主刻度設置為10的倍數

plt.xlim(-0.5,11)  #把x軸的刻度范圍設置為-0.5到11,因為0.5不滿一個刻度間隔,所以數字不會顯示出來,但是能看到一點空白

plt.ylim(-5,110) #把y軸的刻度范圍設置為-5到110,同理,-5不會標出來,但是能看到一點空白

plt.show()

㈥ python繪制函數圖像

raw_input獲取的輸入是字元串,不能直接用np.array,需要用split進行切分,然後強制轉化成數值類型,才能用plot函數
我把你的代碼稍微修改了一下,可能不太漂亮,不過能運行了
x=[1,2,3]
a = raw_input('function>>>')
a = a.split(' ')#依空格對字元串a進行切分,如果是用逗號分隔,則改成a.split(',')
b = []
for i in range(len(a)):#把切分好的字元強制轉化成int類型,如果是小數,將int改為float
b.append(int(a[i]))
plt.plot(x, b, label='x', color="green", linewidth=1)

㈦ 如何用python畫出折線圖

用pylab模塊的plot函數
pylab.plot(x,y)其中x y都是數組
就能畫出以x,y中元素為坐標的折線圖

㈧ python中plot怎麼設置橫縱坐標名稱

用plot畫二維圖像時,默認情況下的橫坐標和縱坐標顯示的值有時達不到自己的需求,需要藉助xticks()和yticks()分別對橫坐標x-axis和縱坐標y-axis進行設置。

import numpy as np

import matplotlib.pyplot as plt

x = range(1,13,1)

y = range(1,13,1)

plt.plot(x,y)

plt.show()

此時的x軸和y軸都是只顯示偶數,其它的奇數未顯示,這樣在展示實驗效果或放入文章中都會影響其可讀性。

為了設置坐標軸的值,增加其可讀性,有多種方法。這里介紹的是matplotlib的函數xticks()和yticks()。


(8)python中plot函數擴展閱讀

基本用法:

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

# 生成x軸上的數據:從-3到3,總共有50個點

x = np.linspace(-1, 1, 50)

# 定義一個線性方程

y1 = 2 * x + 1

# 定義一個二次方程

y2 = x ** 2

# 設置x軸的取值范圍為:-1到2

plt.xlim(-1, 2)

# 設置y軸的取值范圍為:-1到3

plt.ylim(-1, 3)

# 設置x軸的文本,用於描述x軸代表的是什麼

plt.xlabel("I am x")

# 設置y軸的文本,用於描述y軸代表的是什麼

plt.ylabel("I am y")

plt.plot(x, y2)

# 繪制紅色的線寬為1虛線的線條

plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')

# 顯示圖表

plt.show()

㈨ Python繪圖之(1)Turtle庫詳解

Turtle庫是Python語言中一個很流行的繪制圖像的函數庫,想像一個小烏龜,在一個橫軸為x、縱軸為y的坐標系原點,(0,0)位置開始,它根據一組函數指令的控制,在這個平面坐標系中移動,從而在它爬行的路徑上繪制了圖形。

畫布就是turtle為我們展開用於繪圖區域,我們可以設置它的大小和初始位置。

設置畫布大小

turtle.screensize(canvwidth=None, canvheight=None, bg=None),參數分別為畫布的寬(單位像素), 高, 背景顏色。

如:turtle.screensize(800,600, "green")

turtle.screensize() #返回默認大小(400, 300)

turtle.setup(width=0.5, height=0.75, startx=None, starty=None),參數:width, height: 輸入寬和高為整數時, 表示像素; 為小數時, 表示占據電腦屏幕的比例,(startx, starty): 這一坐標表示矩形窗口左上角頂點的位置, 如果為空,則窗口位於屏幕中心。

如:turtle.setup(width=0.6,height=0.6)

turtle.setup(width=800,height=800, startx=100, starty=100)

2.1 畫筆的狀態

在畫布上,默認有一個坐標原點為畫布中心的坐標軸,坐標原點上有一隻面朝x軸正方向小烏龜。這里我們描述小烏龜時使用了兩個詞語:坐標原點(位置),面朝x軸正方向(方向), turtle繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態。

2.2 畫筆的屬性

畫筆(畫筆的屬性,顏色、畫線的寬度等)

1) turtle.pensize():設置畫筆的寬度;

2) turtle.pencolor():沒有參數傳入,返回當前畫筆顏色,傳入參數設置畫筆顏色,可以是字元串如"green", "red",也可以是RGB 3元組。

3) turtle.speed(speed):設置畫筆移動速度,畫筆繪制的速度范圍[0,10]整數,數字越大越快。

2.3 繪圖命令

操縱海龜繪圖有著許多的命令,這些命令可以劃分為3種:一種為運動命令,一種為畫筆控制命令,還有一種是全局控制命令。

(1) 畫筆運動命令


(2) 畫筆控制命令


(3) 全局控制命令


(4) 其他命令


3. 命令詳解

3.1 turtle.circle(radius, extent=None, steps=None)

描述:以給定半徑畫圓

參數:

radius(半徑):半徑為正(負),表示圓心在畫筆的左邊(右邊)畫圓;

extent(弧度) (optional);

steps (optional) (做半徑為radius的圓的內切正多邊形,多邊形邊數為steps)。

舉例:

circle(50) # 整圓;

circle(50,steps=3) # 三角形;

circle(120, 180) # 半圓


實例:

1、太陽花

2、五角星

3、時鍾程序

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:585
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:881
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:574
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:761
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:678
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1005
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:251
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:108
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:799
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:705