Hello à tous,
J'me casse sûrement la tête pour rien mais j'adore ;-)
si quelqu'un a la soluce pour faire apparaître l'annotation avec la
flêche dans le fichier joint :
plt.annotate(
'1er Forum ouvert',
xy=(0,100), arrowprops=dict(arrowstyle='->'), xytext=(1,200))
Ca marchait avec un axe x en décimal mais ça ne marche plus avec les
dates et je suis vraiment pas un pro du python....
Merci d'avance
Vincent
1417305600 73
1419984000 94
1422662400 184
1425081600 255
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import dates
import datetime
with plt.xkcd():
# Based on "Stove Ownership" from XKCD by Randall Monroe
# http://xkcd.com/418/
fig = plt.figure()
#ax = fig.add_axes((0.1, 0.2, 0.8, 0.7))
ax = fig.add_subplot(111)
#ax.spines['right'].set_color('none')
#ax.spines['top'].set_color('none')
x,y = np.loadtxt("donnees.txt", unpack=True)
dd = np.loadtxt("donnees.txt", unpack=True)
d = dd[:,0]
#xx = datetime.datetime.strptime(x, "%Y%m%d")
plt.plot(x,y)
# convert epoch to matplotlib float format
s = x
#ms = x-1000*s # not needed?
dts = map(datetime.date.fromtimestamp, s)
fds = dates.date2num(dts) # converted
#dtsa = map(datetime.datetime.strptime(fds, "%Y%m%d"))
#ss = datetime.datetime.strptime(x, '%Y%m%d')
# matplotlib date format object
#hfmt = dates.DateFormatter('%Y%m%d')
labelx = dts
#x_lims = dates.date2num(dts)
#ax.set_xlim = x_lims
#ax.set_xlim(hfmt)
ax.set_ylim([0, 350])
plt.yticks([50,100,150,200,250,300,350])
#ax.xaxis.set_major_locator(dates.MonthLocator())
#ax.xaxis.set_major_formatter(hfmt)
#ax.xaxis_date()
ax.set_ylim(bottom = 0)
plt.xticks(x, dts)
#plt.subplots_adjust(bottom=.5)
#data = np.ones(100)
#data[70:] -= np.arange(30)
plt.annotate(
'1er Forum ouvert',
xy=(0,100), arrowprops=dict(arrowstyle='->'), xytext=(1,200))
#plt.plot(data)
#plt.xlabel(dts[0])
plt.xlabel('les membres de la liste Alternatiba, mois par mois !')
plt.ylabel('les forces en marche')
fig.text(
0.5, 0.05,
'"ALTERNATIBA Grenoble, on y va !" par Kokonet',
ha='center')
#ax.xaxis_date()
#date_format = dates.DateFormatter('%Y/%m-%d')
#ax.xaxis.set_major_formatter(date_format)
fig.autofmt_xdate()
plt.show()