绘制pyplot中的计算值

时间:2014-04-08 14:36:25

标签: python text matplotlib

我计算了一些值,比如p1 = 3.5和p2 = 4.5(我这里只提供样本值)。它们都是numpy对象。现在我需要在我的pyplot中使用这些值。

我试过

plt.text(0.0,0.0,'c for 13.6<M_{200}<13.7 =',p1)

但是我收到错误说 AttributeError:&#39; numpy.float64&#39;对象没有属性&#39;项目&#39;

我使用的是Python 2.6,我也尝试使用 plt.figtext ,但我无法使用计算出的值。

我知道我可以说plt.text(0.0,0.0,'c for 13.6<M_{200}<13.7 =3.5')会给我所需的输出,但我需要为很多值做这个!

1 个答案:

答案 0 :(得分:1)

您必须事先创建完整的字符串

plt.text(0.0, 0.0, 'c for 13.6<M_{200}<13.7 = %g' % p1)

在这里,我使用old string formatting syntax来避免转义括号。 使用new string formatting syntax,同一行将会读取

plt.text(0.0, 0.0, 'c for 13.6<M_{{200}}<13.7 = {}'.format(p1))

还有一个有趣的thread on SO on string formatting