Pgf Plot, Zahlen an Achsen in wissenschaftlicher Form

Tabellen und Grafiken erstellen und anordnen


Knigge
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 9. Sep 2014, 10:56

Pgf Plot, Zahlen an Achsen in wissenschaftlicher Form

Beitrag von Knigge »

Hallo zusammen.

Ich habe es endlich geschafft mit eine Vorlage für Pol- Nullstellendiagramme mit Latex zu schaffen. Nun stört mich aber daran das ich die Imaginäre Achse nicht in eine wissenschaftliche Form bekomme. Damit meine ich das oben an der 10^3 steht und somit anstelle von 6000 nur eine 6 ist. Hat jemand eine gute Idee?

Hier mal mein Beispiel
\documentclass[margin=10pt]{standalone} 
\usepackage{pgfplots}

\begin{document}

	\begin{tikzpicture}
		\begin{axis}[scale only axis,
		grid=both, 
		height=5cm, width=6cm,
		xlabel={Reale Achse},
		ylabel style={
		  text width=5cm,align=center,
		  anchor=north,at={(rel axis cs:-0.2,0.5)}
		  }, 
		ylabel={Imaginäre Achse}]
		\addplot[mark=o, only marks, samples=8, color=blue]	coordinates{(-3,5000) (-3,-5000)};
		\addplot[mark=asterisk, only marks, samples=8, color=blue] coordinates{(-1,20) (-70,6000)};	
		\end{axis} 
	\end{tikzpicture}

\end{document} 

Stamm-

Problem nicht wirklich nachvollziehbar

Beitrag von Stamm- »

Ich verstehe nicht genau, was Du meinst. Ich habe keine derartigen unerwünschten Erscheinungen in der Ausgabe. Auch wenn das Beispiel unten leicht verändert ist, entspricht seine Ausgabe dem, was Du erwartest.
\documentclass[
  11pt,
  border=10pt,
  convert={density=150}
]{standalone}
\usepackage[T1]{fontenc}
\usepackage{pgfplots}

\pgfplotsset{
  compat=1.11,
  xlabel near ticks,
  ylabel near ticks
}

\begin{document}
  \begin{tikzpicture}
    \begin{axis}[
      scale only axis,
      grid=both,
      height=5cm, width=6cm,
      xlabel={Reale Achse},
      ylabel={Imaginäre Achse}
    ]
      \addplot[mark=o,only marks,samples=8,color=blue] coordinates{(-3,5000) (-3,-5000)};
      \addplot[mark=asterisk,only marks,samples=8,color=blue] coordinates {(-1,20) (-70,6000)};
    \end{axis}
  \end{tikzpicture}
\end{document}
Aus dem Komma bei den Marken an der y-Achse sollte vielleicht noch ein anderer »Tausend-Trenner« gemacht werden. Wie das gemacht wird, steht in der Anleitung zu pgfplots.

Bild

Knigge
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 9. Sep 2014, 10:56

Beitrag von Knigge »

Danke erstmal aber die Veränderung des Codes löst leider nicht mein Problem, da dieser funktioniert.

Ich habe keine komischen Erscheinungen, sonder ich möchte eine wissenschaftlich Achsbeschriftung der Zahlenwerte.
Damit meine ich, das an der y Achse oben 10^3 steht und an stelle von 6000, 4000 und 2000 nur noch 6, 4 und 2 steht.

Wenn ich die Positionen auf 60000 erhöhe, macht das tikz von ganz alleine. Dies habe ich auch als Beispiel PDF im Anhang.

Ich möchte aber das diese Schreibweise auch schon bei 6000 angewandt wird. Leider ist mir nicht klar wie das geht.
Dateianhänge
texstudio_xr5640.pdf
(33.19 KiB) 400-mal heruntergeladen

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Mit der Option scale ticks above exponent={2} kannst Du erreichen, dass Zahlen ab 1.000 skaliert werden. Ich habe in Deinem Code noch
\pgfplotsset{compat=1.11}
eingefügt. Dann werden die Achsen automatisch an der richtigen Stelle beschriftet.
\documentclass[margin=10pt]{standalone} 
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},germandbls={ß}}

\usepackage{pgfplots}
\pgfplotsset{compat=1.11}

\begin{document} 
\begin{tikzpicture} 
  \begin{axis}[
    scale only axis, 
    grid=both, 
    height=5cm, width=6cm, 
    xlabel={Reale Achse}, 
    ylabel={Imaginäre Achse},
    scale ticks above exponent={2}
    ] 
  \addplot[mark=o, only marks, samples=8, color=blue]   coordinates{(-3,5000) (-3,-5000)}; 
  \addplot[mark=asterisk, only marks, samples=8, color=blue] coordinates{(-1,20) (-70,6000)};   
  \end{axis} 
\end{tikzpicture} 
\end{document}
Bild

Gruß
Elke
Dateianhänge
gl_sci.png
gl_sci.png (11.52 KiB) 2326 mal betrachtet

Knigge
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 9. Sep 2014, 10:56

Beitrag von Knigge »

Super! Vielen Dank... genau danach hatte ich gesucht.

Antworten