【问题标题】:Passing pyplot points as arguments将 pyplot 点作为参数传递
【发布时间】:2012-03-08 01:22:45
【问题描述】:

所以我初始化了一个pyplot图

import ... ## import all relevent modules

f = plt.figure(figsize=(8,3),dpi(100)
a = plt.subplot(111)
a.set_xlim(left=0,right=25,auto=False)
a.set_ylim(bottom=0,top=250,auto=False)

a.plot([5,10,15],[80,150,210])
plt.show()

这很好用...我想做的是编写一个可以动态更新散点图的函数...类似于:

def plot_point(x_coord,y_coord):
  a.plot([x_coord],[y_coord])
  a.draw() ## I thought this would work... :(

没有错误,但没有绘制点。我怎样才能解决这个问题?我使用图形完成它的原因是我可以将它嵌入到 Tkinter 中。

感谢您的帮助!

【问题讨论】:

  • 您说的是“散点图”,但您使用的是 .plot(),而不是 .scatter();您想要更新的线还是散点图上的新点?
  • 散点图上的新点。让我尝试使用 scatter() 而不是 plot()
  • 有效!谢谢帝斯曼!这么小的问题。 :)

标签: python tkinter matplotlib


【解决方案1】:

plot 非常适合用于绘制单个点(如果您不想通过点的颜色或大小添加其他信息,甚至建议超过 scatter)。初始示例中缺少的是设置正确的线型;显然,一条由一个点组成的线不会出现。将线条样式更改为“+”或类似的东西可以解决问题:

def plot_point(x_coord,y_coord):
  a.plot([x_coord],[y_coord], '+')

【讨论】:

  • +1 用于解释plotscatter 之间的区别,+1(如果可以的话)用于解释为什么单点的线不显示,以及如何解决这个问题。 ..
猜你喜欢
  • 1970-01-01
  • 2019-04-16
  • 2019-03-26
  • 2020-09-18
  • 2015-05-24
  • 2012-11-10
  • 2020-10-30
  • 2014-02-25
相关资源
最近更新 更多