for-Schleife in axis-Umgebung bzw. vertikale Linien in plots

Tabellen und Grafiken erstellen und anordnen


dralban
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 30. Mär 2016, 19:00

for-Schleife in axis-Umgebung bzw. vertikale Linien in plots

Beitrag von dralban »

Hallo zusammen,

leider habe ich noch einmal ein Problem mit tikz.

Der folgende Code gibt mir immer einen "Undefined Control Sequence" wegen \end{axis} aus, was meiner Meinung nach allerdings keinen Sinn macht.

Ich glaube es gibt irgendwie ein Problem mit der for-Schleife in der axis-Umgebung, aber ich komm nicht dahinter.

Mich wundert an dem Minimalbeispiel auch, dass die Linie, die nicht über die Schleife gezeichnet wird, ebenfalls nicht dargestellt wird, falls man die Schleife auskommentiert.

Leider muss ich innerhalb der axis-Umgebung zeichnen, da das Problem aus einem größeren Code stammt, bei dem ich Daten einlese und bei bestimmten x-Werten eine vertikale Linie zeichnen will.

Falls das auch einfacher geht, würde mir das auch helfen ;-)


Vielen Dank schon einmal für eure Hilfe!!

\documentclass[a4paper,12pt,twoside,halfparskip,openright,cleardoubleempty,bibtotoc,liststotoc,tablecaptionabove]{scrreprt} 
\usepackage{ngerman} 
\usepackage[utf8]{inputenc} 
\usepackage[pdftex]{graphicx} 
\usepackage{hyperref} 
\usepackage{amsmath} 
\usepackage{amssymb} 
\usepackage{tikz} 
\usepackage{tikz-3dplot} 
\usepackage{pgfplots} 

\begin{document} 


\begin{figure}
	\centering
	\begin{tikzpicture}
	\def\h{8cm}
	\def\w{14cm}
	\def\xo{5}
	
	
	\begin{axis}[
	width=\w,
	height=\h,
	grid=major,
	xmin=0,
	xmax=6,
	ymin=0,
	ymax=10,
	xlabel=x,
	ylabel=y]

	\addplot {2*x};
	
	\draw[red,dashed,thick] (\xo,0) -- (\xo,7) node[above]{abcde};
	
	\foreach \i in {0,1,...,5}{
		\draw[red,dashed,thick] (\i,0) -- (\i,7) node[above]{};
	};
	
	\end{axis}
	
	\end{tikzpicture}
\end{figure}

\end{document}

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4300
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

\documentclass[a4paper,12pt,twoside,halfparskip,openright,cleardoubleempty,bibtotoc,liststotoc,tablecaptionabove]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[pdftex]{graphicx}
\usepackage{hyperref}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\usepackage{pgfplots}

\begin{document}


\begin{figure}
\centering
\begin{tikzpicture}
\def\h{8cm}
\def\w{14cm}
\def\xo{5}


\begin{axis}[
width=\w,
height=\h,
grid=major,
xmin=0,
xmax=6,
ymin=0,
ymax=10,
xlabel=x,
ylabel=y]

\addplot {2*x};


\draw[red,dashed,thick] (axis cs:\xo,0) -- (axis cs: \xo,7) node[above]{abcde};

\pgfplotsforeachungrouped \i in {0,1,...,5}{
\edef\temp{\noexpand\draw[red,dashed,thick] (axis cs:\i,0) -- (axis cs:\i,7) node[above]{};}
\temp
};

\end{axis}

\end{tikzpicture}
\end{figure}

\end{document}
Für Erklärung siehe die Doku, Kapitel 8.

dralban
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 30. Mär 2016, 19:00

Beitrag von dralban »

Hammer! Vielen Dank für die schnelle Hilfe!!!
Werde das jetzt mal versuchen in den großen Code zu übertragen.

dralban
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 30. Mär 2016, 19:00

Beitrag von dralban »

hat auch funktioniert! VIELEN DANK!!

Antworten