首頁 >後端開發 >Python教學 >如何使用 PyPlot 和 Scipy 在 Python 中平滑線圖?

如何使用 PyPlot 和 Scipy 在 Python 中平滑線圖?

Susan Sarandon
Susan Sarandon原創
2024-11-02 16:04:02525瀏覽

使用 PyPlot 平滑線圖

PyPlot 的預設線圖方法用直線連接資料點。這種方法可能會導致鋸齒狀線條,尤其是在處理大型資料集時。幸運的是,有一個簡單的方法可以使用 scipy.interpolate.spline 來平滑這些線條。

<code class="python"># Import necessary libraries
import matplotlib.pyplot as plt
import numpy as np
from scipy.interpolate import spline

# Define data arrays
T = np.array([6, 7, 8, 9, 10, 11, 12])
power = np.array([1.53E+03, 5.92E+02, 2.04E+02, 7.24E+01, 2.72E+01, 1.10E+01, 4.70E+00])

# Generate a smoothed spline
xnew = np.linspace(T.min(), T.max(), 300)
power_smooth = spline(T, power, xnew)

# Plot the smoothed line
plt.plot(xnew, power_smooth)
plt.show()</code>

平滑之前:
How to Smooth a Line Plot in Python using PyPlot and Scipy?

平滑後:
How to Smooth a Line Plot in Python using PyPlot and Scipy?

平滑後:

<code class="python"># Import make_interp_spline and BSpline
from scipy.interpolate import make_interp_spline, BSpline

# Generate a smoothed spline using BSpline
spl = make_interp_spline(T, power, k=3)
power_smooth = spl(xnew)

# Plot the smoothed line
plt.plot(xnew, power_smooth)
plt.show()</code>
平滑後: >或者,您可以使用scipy.interpolate.make_interp_spline 中的BSpline 來獲得更現代的方法:

以上是如何使用 PyPlot 和 Scipy 在 Python 中平滑線圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn