ホームページ >バックエンド開発 >Python チュートリアル >再プロットせずに Matplotlib プロットを効率的に更新するにはどうすればよいですか?

再プロットせずに Matplotlib プロットを効率的に更新するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-03 05:05:13820ブラウズ

How Can I Efficiently Update Matplotlib Plots Without Replotting?

Matplotlib プロットの効率的な更新

プロットの繰り返しを避けながら Matplotlib のプロットを更新するには、次のオプションを検討してください:

1. Clear メソッドによるクリアと再プロット

プロットを再描画する前に、graph1.clear() とgraph2.clear() を呼び出します。これにより、白紙の状態が保証されますが、時間がかかる可能性があります。

2.プロット オブジェクトのデータの更新

完全に再プロットするのではなく、既存のプロット オブジェクトのデータを更新します。これは高速ですが、データの形状を一定に保つ必要があります。手動の軸制限調整が必要な場合があります。

2 番目のオプションを説明するには:

import matplotlib.pyplot as plt
import numpy as np

# Define initial data
x = np.linspace(0, 6*np.pi, 100)
y = np.sin(x)

# Create figure and plot
fig = plt.figure()
ax = fig.add_subplot(111)
line1, = ax.plot(x, y, 'r-')

# Iterate through phases and update data
for phase in np.linspace(0, 10*np.pi, 500):
    line1.set_ydata(np.sin(x + phase))
    fig.canvas.draw()
    fig.canvas.flush_events()

このメソッドは、プロット全体を再描画せずに、プロット データをリアルタイムで効率的に更新します。

以上が再プロットせずに Matplotlib プロットを効率的に更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。