Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Melicinkan Plot Garis dalam Python menggunakan PyPlot dan Scipy?

Bagaimana untuk Melicinkan Plot Garis dalam Python menggunakan PyPlot dan Scipy?

Susan Sarandon
Susan Sarandonasal
2024-11-02 16:04:02444semak imbas

Melicinkan Plot Garis dengan PyPlot

Kaedah plot garis lalai PyPlot menghubungkan titik data dengan garis lurus. Pendekatan ini boleh mengakibatkan garisan bergerigi, terutamanya apabila berurusan dengan set data yang besar. Nasib baik, terdapat cara mudah untuk melicinkan garisan ini menggunakan 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>

Sebelum melicinkan:
How to Smooth a Line Plot in Python using PyPlot and Scipy?

Selepas melicinkan:
How to Smooth a Line Plot in Python using PyPlot and Scipy?

Sebagai alternatif, anda boleh menggunakan BSpline daripada scipy.interpolate.make_interp_spline untuk pendekatan yang lebih moden:

<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>

Atas ialah kandungan terperinci Bagaimana untuk Melicinkan Plot Garis dalam Python menggunakan PyPlot dan Scipy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn