Ich möchte für meine Bachelorarbeit die Achsenbeschriftungen bei den pgf-plots mit einem Komma {,} statt einem Punkt {.} getrennt haben. Habe es schon auf diversen Wegen versucht gehabt, jedoch funktioniert es entweder nicht, oder er gibt mir eine Fehlermeldung zurück, dass angeblich eine {...} oder $...$ fehlen, was jedoch nicht der Fall ist.

Open in writeLaTeX
\documentclass{article}
\usepackage[UTF8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{tikz}
\usepackage{pgfplots} 
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xticklabels ={-2.0,-1.5,-1.0,0,1.0,1.5,2.0},height=9cm,width=9cm,grid=major,/pgf/number format/.cd, use comma, 1000 sep = {}]
\addplot coordinates {
    (-4.77778,2027.60977)
    (-3.55556,347.84069)
    (-2.33333,22.58953)
    (-1.11111,-493.50066)
    (0.11111,46.66082)
    (1.33333,-205.56286)
    (2.55556,-341.40638)
    (3.77778,-1169.24780)
    (5.00000,-3269.56775)
};
\addlegendentry{estimate}
\end{axis}
\end{tikzpicture}
\end{document}

Mir werden jedoch immer noch Punkte {.} angezeigt, und

Open in writeLaTeX
xticklabels ={$-2,0$,$-1,5$,$-1,0$,$0$,$1,0$,$1,5$,$2,0$}

ergibt nur eine Fehlermeldung... "Extra }, or forgotten $."

gefragt 10 Dez '14, 11:19

David_H's gravatar image

David_H
34138
Akzeptiert-Rate: 0%


Mit xticklabels beschriftest Du die Ticks nur. Wenn Du diese nicht mit xtick=... vorgegeben hast, dann werden die automatisch gesetzten Ticks mit Deinen Werten versehen - in Deinem Beispiel stehen dann unabhängig vom Dezimaltrenner falsche Werte an der x-Achse!

Wenn Du bei den xticklabels Dinge mit Komma angeben möchtest, dann musst Du sie Klammern, da das Komma sonst als Trennung zwischen verschiedenen Ticklabels verstanden wird. Also zum Beispiel xticklabels={{$-2,0$},{$-1,5$}} oder xticklabels={${-2,0}$,${-1,5}$}. Trotzdem wäre die Beschriftung der x-Achse falsch, weil gar nicht vorgegeben ist, bei welchem x-Wert das jeweilige Label stehen soll.

Aber Du brauchst xticklabels gar nicht. Die Ausgabe der Zahlen kannst Du mit ticklabel style bzw. xticklabel style einstellen. Die Auswahl der Ticks kannst Du entweder pgfplots überlassen oder mit xtick={...} vorgeben.

Open in writeLaTeX
\documentclass{article}
\usepackage{pgfplots} 
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
  height=9cm,width=9cm,
  grid=major,
  xtick ={-5,-2.5,0,2.5,5},% Auswahl der zu setzenden Ticks
  ticklabel style={% gilt für x und y
    /pgf/number format/.cd,
    use comma,% Komma als Dezimaltrenner
    1000 sep = {}% keine Tausendertrennung 
  },
  xticklabel style={% nur für x
    /pgf/number format/.cd,
    fixed zerofill,% mit Nullen auffüllen
    precision=1% eine Nachkommastelle
  }
  ]
\addplot coordinates {
    (-4.77778,2027.60977)
    (-3.55556,347.84069)
    (-2.33333,22.58953)
    (-1.11111,-493.50066)
    (0.11111,46.66082)
    (1.33333,-205.56286)
    (2.55556,-341.40638)
    (3.77778,-1169.24780)
    (5.00000,-3269.56775)
};
\addlegendentry{estimate}
\end{axis}
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 10 Dez '14, 12:08

esdd's gravatar image

esdd
15.8k144055
Akzeptiert-Rate: 63%

bearbeitet 10 Dez '14, 12:21

Vielen Dank, scheint zu funktionieren. Mir ist bewusst, dass die ticklabel hier überflüssig sind, aber in meiner BA ist das komplizierter und das hier nur ein Minimalbeispiel, was die Problematik wiederspiegeln sollte.

(10 Dez '14, 12:14) David_H

Dann denke aber dran, dass Du zu den bei xticklabel={...} angegebenen Beschriftungen auch die zugehörigen x-Koordinaten über xtick={...} angeben musst.

(10 Dez '14, 12:24) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×685
×279
×7

gestellte Frage: 10 Dez '14, 11:19

Frage wurde gesehen: 17,928 Mal

zuletzt geändert: 10 Dez '14, 12:24