Первым шагом является преобразование строк в числовые значения для времен:
time=['07:45','8:15','8:45','9:35','10:15','15:05','16:05']
d=[]
for i in time:
c=i.split(':')
d.append((float(c[0])-7)*60+float(c[1]))
print d
Мы связывали с каждым разом количество минут, отделяющих его от 7 часов.Затем мы можем построить график:
value=[3,8,12,54,23,12,5]
import matplotlib.pyplot as plt
plt.plot(d,value)
, а также изменить галочки:
value=[3,8,12,54,23,12,5]
import matplotlib.pyplot as plt
plt.plot(d,value)
plt.xticks(d,time)
plt.show()
Если вы хотите использовать разные x-галочки, вы просто вручную записываете их в список,например:
time2=['8:00','10:00','12:00','14:00','16:00']
, затем вы конвертируете список, как мы это делали ранее:
d2=[]
for i in time2:
c=i.split(':')
d2.append((float(c[0])-7)*60+float(c[1]))
print d2
, и соответственно меняете галочки:
plt.xticks(d2,time2)