Probleme bei Skalierung von X-Achse

Tabellen und Grafiken erstellen und anordnen


itsnotenough
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: So 7. Aug 2016, 23:23

Probleme bei Skalierung von X-Achse

Beitrag von itsnotenough »

Guten Abend,

ich bin gerade dabei meine Bachelorarbeit mit Latex zu schreiben. Bin auch so gut wie fertig, nur ein Graph von vielen ärgert mich. Ich habe schon viel im Netz gesucht, aber keine Antwort gefunden.

Folgendes Problem:

Der Graph den ich plotten möchte hat eine X-Achsen Aufteilung von:
0,1320,1335,1455,1470,1470
Wie ihr sehen könnt ist von 0-1320 ein sehr großer Schritt und der Rest relativ klein.

Wie kann ich die X-Achse so anpassen dass alle Werte in einem gleichmäßigen Abstand dargestellt werden und nicht wie momenten (siehe Minimal-Bsp.) zusammen gequetscht im rechten Bereich der Achse?

Minimal-Bsp.:
\documentclass[12pt,a4paper,oneside,titlepage]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{pdfpages}
\usepackage{filecontents}
\begin{filecontents*}{data.dat}
		 0		80
		1320	80
		1320	25
		1335	25
		1335	-20
		1455	-20
		1455	25
		1470	25
\end{filecontents*}
\begin{document}
	\pgfplotsset{every tick label/.append style={font=\scriptsize}}
		\begin{tikzpicture}
			\begin{axis}[	scale=1.3, 
										xtick={0,1320,1335,1455,1470,1470},xmin=-20, xmax=1490, xlabel={\footnotesize Zeit $\lbrack$min$\rbrack$},
										ymin=-45, ymax=95, ylabel={\footnotesize Temperatur $\lbrack$\textdegree{C}$\rbrack$},  
										grid=major]
										\addplot  table{data.dat};
			\end{axis}
		\end{tikzpicture}
\end{document}
Um jeden Vorschlag oder Lösungsansatz wäre ich wirklich dankbar, da ich echt nicht weiter komme.

Gruß

DADABBI

Beitrag von DADABBI »

Du könntest eine logarithmische Skala verwenden (xmode=log). Du könntest aber auch einfach schummeln:
\documentclass[12pt,a4paper,oneside,titlepage]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{pdfpages}
\usepackage{filecontents}
\begin{filecontents*}{data.dat}
0 80
1320 80
1320 25
1335 25
1335 -20
1455 -20
1455 25
1470 25
\end{filecontents*}
\begin{document}
\pgfplotsset{every tick label/.append style={font=\scriptsize}}

\begin{tikzpicture}
\begin{axis}[ scale=1.3,
xmin=1300,xmax=1490,
xtick={1300,1320,1335,1455,1470,1470},xticklabels={0,1320,1335,1455,1470,1470},xlabel={\footnotesize Zeit $\lbrack$min$\rbrack$},
ymin=-45, ymax=95, ylabel={\footnotesize Temperatur $\lbrack$\textdegree{C}$\rbrack$},
grid=major]
\addplot table{data.dat};
\end{axis}
\end{tikzpicture}
\end{document}
Ich finde \scriptsize übrigens unangenehm klein, weil schlecht lesbar.

itsnotenough
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: So 7. Aug 2016, 23:23

Beitrag von itsnotenough »

Danke für die schnelle Antwort, sieht auf jedenfall viel besser aus als vorher.

Logarithmisch hab ichs schon versucht, nur da hab ich dann immer die zehner Basis mit Potenz. Wie kann ich die Darstellung dann ändern?

Und danke für den Hinweis bezüglich der Schriftgröße, es ist wohl wirklich etwas klein :-)

DADABBI

Beitrag von DADABBI »

Es gibt da eine Option für (kann gerade nicht nachschauen, aber irgend etwas mit log ticks). Bitte selbst in [d]pgfplots[/d] nachlesen. Aber man kann natürlich auch wie in meinem Beispiel die Label einfach von Hand per xtickslabel vorgeben. Zu beachten ist, dass der Logarithmus von 0 nicht definiert ist. Das bedeutet, dass das erste x nicht mehr 0 sein darf, sondern einen kleinen positiven Wert haben müsste.

Antworten