PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : pgfplots label verschieben



Poseidonius
26-02-2009, 19:45
Hallo zusammen,

ich habe aus einem Matlab-Figure mit Matfig2tikz tikz Code generiert. Es entsteht eine axis Umgebung, in der leider das ylabel zu dicht am Diagramm steht ... wie kann ich da per Hand nachhelfen und das Label verschieben?



\begin{tikzpicture}[scale=1]

\begin{axis}[%
name=main plot,%
xtick={0,5,10,15},%
ytick={0,0.002,0.004,0.006,0.008,0.01,0.012,0.014, 0.016,0.018,0.02},%
xlabel=Anzahl der redundanten Sensoren,%
ylabel=Wahrscheinlichkeit des Verlassens der $\epsilon$ Umgebung,%
xmin=0, xmax=15,%
ymin=0, ymax=0.02%
]
\addplot [%
color=red,%
mark size=1.0pt,%
only marks,%
mark=*,%
mark options={solid}%
] coordinates{
(1,0.01) (2,0.0199) (3,0.000298) (4,0.00059203) (5,0.00098015) (6,0.00146045) (7,0.00203104) (8,0.00269008) (9,0.00343573) (10,0.0042662) (11,0.00517972) (12,0.00617454) (13,0.00724894) (14,0.00840124) (15,0.00962977)
};

\end{axis}

\end{tikzpicture}


Wie immer tausend Dank für Eure Hilfe

bobmalaria
26-02-2009, 23:25
hi,

gibt vielleicht nene besseren weg... aber so geht's

habe den text in eine parbox gepackt damit er ca. so hoch ist wie das diagramm
mit dem paket ragged2e und \RaggedRight versuche ich den umbruch der wörter schöner hinzubekommen.

die längste achsenbeschriftung die ich jegesehen habe


\documentclass[english,parskip=full-]{scrreprt}
\usepackage{babel}

\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{ragged2e}

\begin{document}


\begin{tikzpicture}[scale=1]
\pgfplotsset{
every axis y label/.style={at={(-50pt,0)},
anchor=west,rotate=90}}
\begin{axis}[%
name=main plot,%
xtick={0,5,10,15},%
ytick={0,0.002,0.004,0.006,0.008,0.01,0.012,0.014, 0.016,0.018,0.02},%
xlabel=Anzahl der redundanten Sensoren,%
ylabel=\parbox{6.5cm}{\RaggedRight Wahrscheinlichkeit des Verlassens der $\epsilon$ Umgebung,%
xmin=0, xmax=15,%
ymin=0, ymax=0.02}%
]
\addplot [%
color=red,%
mark size=1.0pt,%
only marks,%
mark=*,%
mark options={solid}%
] coordinates{
(1,0.01) (2,0.0199) (3,0.000298) (4,0.00059203) (5,0.00098015) (6,0.00146045) (7,0.00203104) (8,0.00269008) (9,0.00343573) (10,0.0042662) (11,0.00517972) (12,0.00617454) (13,0.00724894) (14,0.00840124) (15,0.00962977)
};

\end{axis}

\end{tikzpicture}

\end{document}


gruss

Poseidonius
27-02-2009, 07:01
Dein Hinweis mit der langen Beschriftung hat mich auf die Lösung gebracht ...

... xmin, ymax usw. gehörten nicht zum Label sondern sind pgf Befehle. Wenn man diese herausnehme (das Diagramm ist ja schon durch xtick und ytick definiert), verschwindet der Exponent und die Beschriftung passte auch ohne Deinen wunderbaren Trick.

Trotzdem vielen Dank und ein schönes Wochenende

PS. Bisher habe ich Matlabplots immer als pdf eingebunden aber als tikz Objekt kann man Schriftgröße und Grafik unabhänig skalieren und das sieht einfach tausend mal besser aus ... für Matlabuser unbedingt empfehlenswert !!!

Tool unter http://www.mathworks.com/matlabcentral/fileexchange/22022