Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mencipta Garis Lancar dalam Graf PyPlot?

Bagaimana untuk Mencipta Garis Lancar dalam Graf PyPlot?

Patricia Arquette
Patricia Arquetteasal
2024-11-01 17:48:30689semak imbas

How to Create a Smooth Line in a PyPlot Graph?

Memplot Garis Lancar dalam PyPlot

Masalah:

Apabila memplot graf menggunakan PyPlot , garis penghubung antara titik data mungkin kelihatan tegar dan tidak berterusan. Ini boleh menjadi tidak diingini dalam senario tertentu.

Soalan:

Bagaimana untuk melicinkan garis penghubung dalam graf PyPlot?

Penyelesaian:

Untuk mencapai garisan yang lebih lancar, seseorang boleh menggunakan teknik interpolasi spline scipy. Begini caranya:

<code class="python">import matplotlib.pyplot as plt
import numpy as np
import scipy.interpolate

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

# Create a dense array of points for interpolation
xnew = np.linspace(T.min(), T.max(), 300)

# Interpolate the data using a cubic spline
power_smooth = scipy.interpolate.spline(T, power, xnew)

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

Nota: Fungsi 'spline' dalam scipy ditamatkan dalam versi 0.19.0. Gunakan kelas 'BSpline' sebaliknya. Berikut ialah versi yang dikemas kini:

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

# Create a dense array of points for interpolation
xnew = np.linspace(T.min(), T.max(), 300)

# Create a B-spline interpolation object
spl = make_interp_spline(T, power, k=3)  # type: BSpline

# Evaluate the interpolation at the new points
power_smooth = spl(xnew)

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

Argumen 'k' dalam 'make_interp_spline' mengawal kelancaran spline. Nilai 'k' yang lebih tinggi menghasilkan garisan yang lebih licin.

Plot yang terhasil akan mempamerkan garis penghubung yang lancar antara titik data, memberikan perwakilan data yang lebih menarik secara visual.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Garis Lancar dalam Graf PyPlot?. 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