我试图绘制时间(轴-x)与流量(轴-y)。我的数据系列“时间”是一年中的几天,但它从1到365.任何方式让图表显示在x轴天/月(所以1月1日将是1-1,2月1日1-2,。 ..,12月1日1-12)而不是1,2,3,4,5一直到365?或者我是否需要添加另一个包含日期的列?
from matplotlib import pyplot
enter code from matplotlib import pyplot
from math import log
time = list(mom6[0])
flow = list(mom6[1])
pyplot.scatter(x,y,linestyle = '--')
pyplot.ylabel('Flow (cfs)')
pyplot.xlabel('Time')
pyplot.title('Flow Duration')
pyplot.yscale('log')
plt.grid(True)
plt.show()here
同样对于pyplot.scatter(x,y,linestyle =' - '),它不会连接点。我的数组也是这样的:
1,972
10,847
100,2234
.
.
.
365,1990
最佳
答案 0 :(得分:1)
您可以使用datetime进行转换:
(适用于time = list(mom6[0])
之后的插入):
import datetime
start = datetime.date(2015, 1, 1)
dts = [ start + datetime.timedelta(days=int(ea)-1) for ea in time ]
time = [ ea.strftime('%d-%m') for ea in dts ]
结果:
>>> time[:5]
>>> ['01-01', '02-01', '03-01', '04-01', '05-01']