2009-10-25 13 views
7

in matplotlib Zecken, wie platziere ich Zecken Etiketten zwischen Zecken (nicht unter Zecken)Ort Etiketten zwischen

zum Beispiel: wenn eine der Aktienkurs im Laufe der Zeit Plotten Ich möchte die x-Achse kleinere Ticks Monate anzuzeigen und die Jahre zwischen aufeinanderfolgenden x-Achse Haupt Zecken (nicht nur unter den großen Zecken)

---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|--- 
    jan feb mar apr may jun jul aug sep oct nov dec jan feb mar apr may jun jul aug sep 
         2008           2009 

Antwort

5

Wird dies den Trick machen?

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') 

Barchart with proper labels

+0

Bilder nicht verfügbar (Homepage von Images) –

+0

@PierreCordier Danke, fixiert –

1

Sie meinen, so etwas zeigen: - http://matplotlib.sourceforge.net/examples/pylab_examples/barchart_demo.html ??

Sie müssen xticks verwenden und die ha (oder 'Horizontal') Parameter:

>>> 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') 

Blick auf Hilfe (xticks) und Hilfe (matplotlib.text.Text) für mehr Optionen

bearbeiten: Entschuldigung, ich habe nicht gesehen, dass du auch fragst, wie man die Jahrelabels unter Ticks setzt. Ich denke, Sie müssen es manuell tun, werfen Sie einen Blick auf das Beispiel, das ich verlinkt habe, um zu sehen, wie es geht.

Verwandte Themen