Feinschliff Diagramm pgfplots Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


pferdchen

Feinschliff Diagramm pgfplots

Beitrag von pferdchen »

Hallo,

ich habe Probleme einige Einstellungen in meinem Diagramm mit pgfplots hinzubekommen.

Vorab: Gibt es irgendwo ein manual für das Paket in deutsch? Ich habe mir das englische angeschaut. Ich denke die Antwort auf meine Fragen steht dort drin - aber als "Nicht-Englisch-Profi" finde ich es sehr mühsam die richtigen Stellen zu finden. Ich möchte keine fertige Vorlage - ein paar Stichworte wären schon hilfreich.

Minimalbeispiel:
\documentclass[a4,titlepage,oneside,12pt,fleqn,german]{report}
\usepackage{pgfplots}
\begin{document}
\centering
	\begin{tikzpicture}
		\begin{axis}[cycle list name=linestyles*,
            width=0.95\textwidth,height=0.5\textheight,
			xtick={0,25,50,75,100,125,132},
            x tick label style={/pgf/number format/1000 sep=},
			xlabel={Bogen [m]},
			y tick label style={/pgf/number format/1000 sep=},
			extra x ticks={10.88, 20.42, 26.057, 33.261, 38.726, 45.804, 51.120, 58.1, 63.297, 70.199, 75.309, 82.146, 87.161, 93.972, 98.927, 105.691, 110.617, 117.352, 122.257, 128.989},
			extra x tick style={grid=major},
			ylabel={$M_{\mathrm{y}}$ [kNm]},
            enlarge x limits=0.01]

			\addplot table[x=x, y=y] {tabellen/MyintaktNA1.prn};
            \addplot table[x=x, y=y] {tabellen/MystatischNA1.prn};
            \addplot table[x=x, y=y] {tabellen/MydynminNA1.prn};
            \addplot table[x=x, y=y] {tabellen/MydynmaxNA1.prn};
		\end{axis}
	\end{tikzpicture}

\end{document} 


Das ganze schaut jetzt so aus:

Bild

Ich möchte folgendes erreichen:

- Anfangs und Endwerte sollen auch der Anfang und das Ende der x-Achse sein (also Anfangs und Endpunkt der Kurve am Rahmen)

-positve und negative Richtung der y-Achse umkehren (positiv nach unten)

-Linienstärke soll dicker (kann man die Linienart gepunktet, gestrichelt usw. auch direkt zuweisen?)

- es sollen nur feste x Werte (oder eben nur so viele dass es lesbar bleibt) sichtbar sein. Die extra x-ticks möchte ich nur als Linien und nicht mit Werten dargestellt haben. Anderer Befehl?

-ich möchte eine etwas dickere Linie zur Kennzeichnung der 0-Linie der y-Achse

-ich möchte eine Legende unterhalb der Tabelle - ohne Rahmen. Nur die Linienart und ein Wort dahinter.

-eine exponentielle und keine lineare Darstellung der Kurve wäre schön

Für Tips wäre ich dankbar!

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

Beitrag von esdd »

Hallo,
- Anfangs und Endwerte sollen auch der Anfang und das Ende der x-Achse sein (also Anfangs und Endpunkt der Kurve am Rahmen)
Warum verlängerst du die x-Achse dann mit "enlarge x limits=0.01"? Lass die Option einfach weg.
-Linienstärke soll dicker (kann man die Linienart gepunktet, gestrichelt usw. auch direkt zuweisen?)
Verwende das optionale Argument von \addplot, also z.B. \addplot[dotted,green,very thick]table...
- es sollen nur feste x Werte (oder eben nur so viele dass es lesbar bleibt) sichtbar sein. Die extra x-ticks möchte ich nur als Linien und nicht mit Werten dargestellt haben. Anderer Befehl?
Probiere es mit der Option "extra x tick label":
extra x ticks={<deine werte>}, 
extra x tick label=\null, 
extra x tick style={grid=major}
-ich möchte eine etwas dickere Linie zur Kennzeichnung der 0-Linie der y-Achse
Falls nur das y-tick an der Stelle verbreitert werden soll, kann man dafür zum Beispiel folgende Optionen verwenden:
extra y ticks={0}, 
extra y tick label=\null, 
extra y tick style={tick style={very thick}}
oder die kleine Linie explizit zeichnen
\draw[very thick](axis cs:0,0)--+(0.15cm,0);
-ich möchte eine Legende unterhalb der Tabelle - ohne Rahmen. Nur die Linienart und ein Wort dahinter.
Gib bei den Optionen einen entsprechenden legend style an:
 \begin{axis}[..., legend style={at={(0,-0.1)},anchor=north west,draw=none}]
   ...
   \legend{<wort1>,<wort2>,<wort3>}
\end{axis}
-eine exponentielle und keine lineare Darstellung der Kurve wäre schön
Verwende doch einfach semilogxaxis oder semilogyaxis oder loglogaxis statt axis.
Gruß
Elke

pferdchen

Beitrag von pferdchen »

Vielen Dank!

Das war schonmal sehr hilfreich!

Antworten