如何设置轴以在绘图外添加文本?​​

时间:2016-04-22 14:56:42

标签: python-3.x matplotlib

(使用python3.4)

这是我用来绘制的代码。我正在尝试添加其他文本,以帮助解释这个情节的内容。

import matplotlib.pyplot as plt
import numpy as np
somecode.....
somecode.....
xv=np.array(x1)
yv=np.array(y1)
txt='''
Text to be printed outside the plot
Text to be printed outside the plot
Text to be printed outside the plot
Text to be printed outside the plot
Text to be printed outside the plot
'''
plt.figure(1)
plt.scatter(yv,zv, label="Cap vs Percentage Diff", color="m")
plt.xlabel('Latest Cap in FF')
plt.ylabel('Percentage Diff')
plt.title('Variable Cap')
plt.grid(True)
plt.legend()
plt.text(0.95, 0.95, txt)

我用plt.text打印了X轴下方的0.95和Y轴上的0.95。但matplotlib正在选择相对于图表的坐标。

此问题在其他几个主题上报告,大部分答案都是使用plt.text格式解释的。

有没有办法在轴外打印文字?

作为解决方法我正在将此信息添加到plt.xlabel中,以便可以在x轴标签下打印。但是,我想知道通过不指定坐标来在图表外添加文本的可能性。

原因我不想使用/指定X,Y坐标是,XY坐标在我正在读取的数据中可以是负值。

我试图理解文档中的语法和用法,但这远远超出了我的专业知识,因为几周前我开始使用python。

感谢是否有人可以解释/告诉如何使用text和figtext在剧情之外添加数据。

文本和figtext都需要轴信息吗?

当前绘图显示的图像没有我要在图表外添加的文本

enter image description here

所需的剧情风格:我想在子剧情的x标签下的stddev,avg,min和max:

enter image description here

由于

编辑1:添加原始代码。

import matplotlib
import sys
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import os

x1=[1, 2, 3, 4]
y1=[5, 6, 7, 8]
z1=[9, 10 ,11, 12]

xv=np.array(x1)
yv=np.array(y1)
zv=np.array(z1)
#Find Max, Min, Avg and StdDev for the delta(C) i.e. zv numpy array
MaxCapDiff      =str (np.amax(zv))
MinCapDiff      =str (np.amin(zv))
AvgOfCapDiff        =str (np.average(zv))
StdDevOfCapDiff     =str (np.std(zv))

print ('Max Cap Diff in Percent:'+MaxCapDiff) print ('Min Cap Diff in          Percent:'+MinCapDiff) print ('Avg of Cap Difference  :'+AvgOfCapDiff)
print ('STD DEV of Cap Diff    :'+StdDevOfCapDiff)

plt.figure(1)
plt.subplot(211)
plt.scatter(xv,yv, label="Cap vs Cap")
plt.xlabel('Golden Cap in (FF)')
plt.ylabel('Latest Cap in (FF)')
plt.title('Cap Comparison')
plt.legend()

plt.subplot(212)
plt.scatter(yv,zv, label="Cap vs Percentage Diff", color="m")
plt.xlabel('Latest cap in (FF)') plt.ylabel('Percentage Diff')
plt.title('Variable Cap')
plt.legend()
plt.tight_layout()
plt.savefig('plot.jpg')
plt.show()

0 个答案:

没有答案