HOWTO · Matplotlib
如何在 Matplotlib 中更改圖形大小及格式
我們使用 fig(),set_figheight()以及 set_figwidth()和 set_size_inches()方法,並設定 rcParams 來更改 Matplotlib 中的圖形大小。要更改圖形的格式,我們只需在 savefig()方法中更改副檔名即可。
本頁內容
我們可以使用 set_figheight() 和 set_figwidth() 和 set_size_inches() 方法來更改 Matplotlib 中的圖形大小。我們也可以通過在 figure() 方法和 rcParams 中設定 figsize 來改變 Matplotlib 中的圖形大小。同樣,要更改圖形格式,我們只需在 savefig() 方法中更改影象檔案的副檔名。
初始化期間在 figure() 方法中設定 figsize
我們可以在初始化期間通過 figure() 方法設定 figsize 引數的值,該引數以英寸為單位指定圖形的寬度和高度。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 0.5)
m = 1
c = 2
y = m * x + c
plt.figure(figsize=(6, 4))
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
plt.show()
輸出:
figsize 引數的預設值為 [6.4, 4.8]。
設定 rcParams 來更改 Matplotlib 中圖形的大小
我們可以更改儲存在 matplotlib.rcParams 字典中的預設 figure.figsize 值,以更改 Matplotlib 中的圖形大小。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 20)
m = 1
c = 2
y = m * x + c
plt.rcParams["figure.figsize"] = (8, 6)
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
plt.show()
輸出:
set_figheight() 和 set_figwidth() 一起設定 Matplotlib 圖形大小
如果已經建立了圖形,我們可以使用 set_figheight() 和 set_figwidth() 方法來確定圖形的大小。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 20)
m = 1
c = 2
y = m * x + c
fig = plt.figure()
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
fig.set_figheight(6)
fig.set_figwidth(8)
plt.show()
輸出:
這裡,set_figheight() 方法設定圖形的高度,而 set_figwidth() 方法設定圖形的寬度。
set_size_inches() 方法來更改 Matplotlib 圖形大小
建立圖形後,此方法還可以設定圖形大小。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 20)
m = 1
c = 2
y = m * x + c
fig = plt.figure()
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
fig.set_size_inches(5, 5)
plt.show()
輸出:
在這裡,傳遞給 set_size_inches() 方法的引數分別表示圖形的寬度和高度(以英寸為單位)。
在 Matplotlib 中更改圖形格式
要更改圖形格式,我們可以使用 savefig() 方法更改影象檔案的副檔名。我們可以將圖儲存為不同的格式,例如 png,jpg,svg,pdf 等。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 20)
m = 1
c = 2
y = m * x + c
fig = plt.figure()
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
fig.set_size_inches(5, 5)
plt.savefig("Figure saved in jpg format.jpg")
這會將圖形儲存為 jpg 格式。