将标签添加到matplotlib图

时间:2014-05-06 10:40:38

标签: python csv numpy matplotlib

拥有以下代码:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates

days, impressions = np.loadtxt('results_history.csv', unpack=True, delimiter=',',usecols=(0,1) ,
        converters={ 0: mdates.strpdate2num('%d-%m-%y')})

plt.plot_date(x=days, y=impressions, fmt="r-")
plt.title("Load Testing Results")


#params = {'legend.labelsize': 500,
    #'legend.handletextpad': 1,
    #'legend.handlelength': 2,
    #'legend.loc': 'upper left',
    #'labelspacing':0.25,
    #'legend.linewidth': 50}
#plt.rcParams.update(params)

plt.legend("response times")

plt.ylabel("Date")
plt.grid(True)
plt.show()

生成图表但我无法确定如何添加一些xy标签。生成的图表:enter image description here

还尝试增加图例文字大小,但不显示文字。并且X轴上的标签重叠。 CSV文件:

01-05-14, 55494, Build 1
10-05-14, 55000, Build 2
15-05-14, 55500, Build 3
20-05-14, 57482, Build 4
25-05-14, 58741, Build 5

如何从csv添加xytext并更改图例和X轴的格式?

1 个答案:

答案 0 :(得分:2)

您需要annotate,例如:

plt.annotate('some text',xy=(days[0],impressions[0]))

要调整x轴文本,您可以添加:

fig=plt.figure() # below the import statements
...
fig.autofmt_xdate() # after plotting

要更改图例文本,请使用绘图功能中的label参数:

plt.plot_date(x=days, y=impressions, fmt="r-",label="response times")

要增加图例字体大小,请执行以下操作:

plt.legend(fontsize='x-large')