Matplotlib.pyplot.plot 繪圖

VipSoft發表於2023-05-18

Matplotlib.pyplot 建立圖形、在圖形中建立建立一個繪圖區域、在繪圖區域中你那個繪製一些線、在圖形中新增標籤之類

畫二維平面圖

x = np.arange(0, 10, 2)
y1 = x
y2 = x ** 2
plt.plot(x, y1, '*g--') #g 表示顏色
plt.show()

image

同一個座標系裡畫多條線段

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 2)
y1 = x
y2 = x ** 2

# 正常顯示中文
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']

plt.xlabel('自變數')   # 若是使用 漢字,則顯示出錯
plt.ylabel('因變數')
plt.plot(x, y1, '*g--', y2, '^b-')
plt.legend(['y=x', '$y=x^2$'], loc='upper right')  # 顯示每條線段的解釋, $$ 裡是 LaTeX語句
# 儲存圖片
plt.savefig('./Big Title.png')
# 防止圖片部分缺失 方法一 增大畫布
fig = plt.figure(figsize=(8,4))
# 防止圖片部分缺失 方法一 緊緻佈局
plt.tight_layout()
#增大解析度
plt.savefig('./Big Title.png', dpi=400)
plt.show()

image

分別放兩個框中

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 2)
y1 = x
y2 = x ** 2
# 1.建立畫板fig
fig = plt.figure()
# 引數解釋,前兩個引數 1,2 表示建立了一個一行兩列的框 第三個參數列示當前所在的框
ax1 = fig.add_subplot(1, 2, 1)
ax2 = fig.add_subplot(1, 2, 2)
ax1.plot(x, y1, '*--', color="tab:blue")
ax2.plot(x, y2, '^-', color='tab:orange')
plt.show()

image

函式封裝

import matplotlib.pyplot as plt

def show_plot(x_name: list, precision: list, recall: list, f1: list, AUC: list, path):
    plt.plot(x_name, precision, 'or-', recall, '^g-', f1, '*b-', AUC, '.y-.')
    plt.legend(['precision', 'recall', 'f1', 'AUC'], loc='upper right')
    plt.savefig(path, dpi=300)
    plt.show()
    pass

x_name = ['model1', 'model2', 'model3', 'model4']

y1 = [0.5, 0.6, 0.8, 0.9]
y2 = [0.6, 0.6, 0.85, 0.92]
y3 = [0.7, 0.66, 0.82, 0.91]
y4 = [0.8, 0.7, 0.82, 0.84, 0.93]
show_plot(x_name, y1, y2, y3, y4, r'test.png')

image

畫多條曲線

import numpy as np
import matplotlib.pyplot as plt

fig1 = plt.figure(num=1, figsize=(7, 5))
x = np.linspace(0.0, np.pi * 2, 20)
y = np.sin(x)

plt.plot(x, y, 'rx-', x, 2 * x, 'go-.')  # 每條都指定x軸資料

fig2 = plt.figure(num=2)
plt.plot(x, y, 'rx-', 2 * x, 'go-.')  # 一條指定x軸資料,其他不指定

fig2 = plt.figure(num=3)
plt.plot(y, 'rx-', 2 * x, 'go-.')  # 都不指定
plt.show()

image

說明

format_string 控制曲線的格式字串,可選,由顏色字元風格字元和標記字元組成

顏色

字元 說明 字元 說明 字元 說明
'r' 紅色 'g' 綠色 'b' 藍色
'c' 青綠色 'k' 黑色 'y' 黃色
'w' 白色 'm' 洋紅色

風格

字元 說明 字元 說明 字元 說明 字元 說明
'-' 實線 '–' 破折線 '-.' 點畫線 ':' 虛線

風格

字元 說明 字元 說明 字元 說明
'.' 點標記 ',' 畫素標記 'o' 實心圈標記
'v' 倒三角標記 '^' 上三角標記 '>' 右三角標記
'<' 左三角標記 'h' 豎六邊形標記 'H' 橫六邊形標記
'+' 十字標記 'x' x標記 'D' 菱形標記
'd' 瘦菱形標記 '|' 垂直線標記 '*' 星形標記
'p' 實心五角標記 's' 實心方形標記 '4' 右花三角標記
'3' 左花三角標記 '2' 上花三角標記 '1' 下花三角標記

使用方法

plt.plot(x, y,'g')
plt.plot(x, y,color='green')

plt.plot(x, y,'go')
plt.plot(x, y,color='green',marker = 'o')

plt.plot(x, y,'go-.')

相關文章