【问题标题】:Adding labels from a file to data points on a plot将文件中的标签添加到绘图上的数据点
【发布时间】:2014-03-06 15:17:56
【问题描述】:

我已从 csv 文件加载 x 和 y 数据并绘制它。我已经从 csv 文件中加载了每个点的名称,但无法将其作为标签附加到绘图上的每个点。

data = np.genfromtxt('plotfile.csv',delimiter=',',dtype=str,skiprows=1)
data2 = np.genfromtxt('plotfile.csv',delimiter=',',dtype=float,skiprows=1)
x = data2[:,1]
y = data2[:,3]
z = data[:,2]

pylab.xlabel("Distance (km)")
pylab.ylabel("Precursor Length (s)")

scatter(x,y)
text(x,y,labels=z, pos=3)

我不确定是否应该使用注释命令而不是文本。我目前收到一条错误消息:

TypeError: text() 至少需要 3 个参数(给定 2 个)

【问题讨论】:

    标签: python csv numpy matplotlib plot


    【解决方案1】:

    text()xy 中必须是标量(请参阅文档字符串),而不是类似于 array。因此,以下是一种解决方法:

    x=[0.3,0.5]
    y=[0.3,0.5]
    z=['ok','no']
    map(text,x,y,z)
    

    您收到异常的原因是您没有为text(x, y, s, fontdict=None, withdash=False, **kwargs) 提供所需的参数s

    【讨论】:

      【解决方案2】:

      可能是 text() 无法识别标签。试试这个

      text(x, y, z) 
      

      【讨论】:

      • 这给了我一个关于保存图形的非常大的错误 - 我以前没有这个问题。
      • 此 text() 函数用于 pylab 模块,即 pylab.text()。你到底在使用哪个文本函数...
      猜你喜欢
      • 1970-01-01
      • 2018-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      相关资源
      最近更新 更多