placer des étiquettes entre les tiques
-
06-07-2019 - |
Question
dans matplotlib, comment puis-je placer des étiquettes de ticks entre les ticks (pas sous les ticks)
Par exemple: lorsque vous traquez le cours d'une action dans le temps, j'aimerais que les ticks mineurs de l'axe x affichent les mois et les années entre des ticks majeurs consécutifs de l'axe x (pas juste en dessous des ticks principaux)
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
jan feb mar apr may jun jul aug sep oct nov dec jan feb mar apr may jun jul aug sep
2008 2009
La solution
Cela fera-t-il l'affaire?
enter code here
x = 'j f m a m j j a s o n d j f m a m j j a s o n d'.split()
y = abs(randn(24))
x[6] = 'j\n2008' # replace "j" (January) with ('j' and the appropriate year
x[18] = 'j\n2009'
bar(xrange(len(x)), y, width=0.1)
bar(xrange(len(x)), y, width=0.1)
xticks(xrange(len(x)), x, ha='center')
Autres conseils
Voulez-vous dire quelque chose comme ça: - http://matplotlib.sourceforge.net/examples/pylab_examples/barchart_demo.html a> ??
Vous devez utiliser xticks et le paramètre ha (ou 'horizontalalignment'):
>>> x = 'j f m a m j j a s o n d'.split()
>>> y = abs(randn(12))
>>> bar(xrange(len(x)), y, width=0.1)
>>> xticks(xrange(len(x)), x, ha='center')
consultez l'aide (xticks) et l'aide (matplotlib.text.Text) pour plus d'options
edit: désolé, je ne vous ai pas vu demander également comment mettre les étiquettes d'années en dessous des ticks. Je pense que vous devez le faire manuellement, regardez l'exemple que j'ai lié pour voir comment le faire.