【问题标题】:Removing a dot in a scatter plot with matplotlib使用 matplotlib 删除散点图中的点
【发布时间】:2016-01-03 02:07:06
【问题描述】:

下面的代码创建了一个带有白点的散点图。如何在不重绘整个图形的情况下删除这个点?

g = Figure(figsize=(5,4), dpi=60);
b = g.add_subplot(111)
b.plot(x,y,'bo') # creates a blue dot
b.plot(x,y,'wo') # ovverrides the blue dot with a white dot (but the black circle around it remains)

【问题讨论】:

  • 我不明白你想要达到什么目的。您创建了白点,为什么要删除它?
  • 因为我不再需要它了(在进一步计算之后)。它将被更好的结果所取代。

标签: python matplotlib scatter-plot


【解决方案1】:

过度绘图与删除不同。在您的第二个绘图调用中,您绘制了一个带有黑色边框的白色标记。您可以使用plot(x,y,'wo', mec='w') 为标记设置边缘颜色。

但是如果你真的想删除它,捕获返回的line对象,并调用它的remove方法。

fig, ax = plt.subplots(subplot_kw={'xlim': [0,1],
                                   'ylim': [0,1]})


p1, = ax.plot(0.5, 0.5, 'bo') # creates a blue dot
p2, = ax.plot(0.5, 0.5, 'ro')

p2.remove()

上面的示例生成带有蓝色标记的图形。一个红色标记被添加(在前面),但也再次被移除。

【讨论】:

    猜你喜欢
    • 2017-04-05
    • 1970-01-01
    • 2020-07-22
    • 1970-01-01
    • 1970-01-01
    • 2013-06-29
    • 2021-12-09
    • 2015-06-29
    相关资源
    最近更新 更多