【问题标题】:Update text in matplotlib's plot更新 matplotlib 图中的文本
【发布时间】:2021-10-18 09:26:21
【问题描述】:

我想用循环更改 matplotlib 绘图中的文本。我可以使用循环打印文本,但无法删除以前的文本并且它们被打印在彼此之上。

import numpy as np 
import matplotlib.pyplot as plt


x = np.array([1,2,3,4,5])
y = np.array([1,2,3,4,5])

fig, ax = plt.subplots()
ax.set_xlim([0,5])
ax.set_ylim([0,5])
for i in x:
    pt = ax.plot(i, i, 'o')
    tx = ax.text(1, 2, str(i), fontsize = 12)
        
    plt.pause(1)
    removePt = pt.pop()
    removePt.remove()

我试图删除文本

removeTx = tx.pop()
removeTx.remove()

但它没有奏效。

请建议我如何从情节中删除以前的文本。

【问题讨论】:

    标签: python for-loop matplotlib plot visualization


    【解决方案1】:

    只需在暂停后添加tx.remove()

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.array([1, 2, 3, 4, 5])
    y = np.array([1, 2, 3, 4, 5])
    
    fig, ax = plt.subplots()
    ax.set_xlim([0, 5])
    ax.set_ylim([0, 5])
    for i in x:
        pt = ax.plot(i, i, 'o')
        tx = ax.text(1, 2, str(i), fontsize = 12)
    
        plt.pause(1)
        tx.remove()
    
    plt.show()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-13
      • 1970-01-01
      • 2012-10-17
      • 1970-01-01
      • 2012-07-30
      • 1970-01-01
      • 2011-05-05
      相关资源
      最近更新 更多