Datenpunkte beschriften [pgfplots]

Tabellen und Grafiken erstellen und anordnen


kilian
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 6. Feb 2013, 16:13

Datenpunkte beschriften [pgfplots]

Beitrag von kilian »

Hi,
ich stelle mit pgfplots messpunkte welche ich über eine *.txt einlade dar.
Nun würde ich gerne z. B. an jedem 30.ten Datenpunkt eine Anmerkung machen sowas wie "neue Phase".
Wichtig ist das ich das über den 30.ten Datenpunkt zuweisen kann. Also sowas wie
 \node at (xkoordinaten,ykoordinaten) {neue Phase} 
bringt mich nicht wirklich weiter da ich ja jedesmal die Koordinaten raussuchen und eingeben muss und bei ca. 100 Diagramme ist das eine mordsarbeit.

Gruß K.

Epllus
Forum-Guru
Forum-Guru
Beiträge: 470
Registriert: So 23. Sep 2012, 17:31

Beitrag von Epllus »

Poste mal ein Minimalbeispiel, dann kann man schauen, was sich machen lässt.

Epllus

kilian
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 6. Feb 2013, 16:13

Beitrag von kilian »

Hier also ein Minimalbeispiel nebst zugehöriger *.txt Datei im Anhang
%

\documentclass[a4paper,twoside,openright,12pt]{scrbook}

\usepackage[ngerman]{babel}
\usepackage{color}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath,amstext,amssymb}
\usepackage{float}
\usepackage{ifpdf}
\usepackage[pdftex]{graphicx}
\DeclareGraphicsExtensions{.pdf,.png,.jpg,.jpeg,.mps}
\usepackage{tikz}
\usepackage{plain}
\usepackage{multirow}
\usepackage[normal]{caption}%damit die zweite Zeile nicht h�ngend ist
\usepackage{enumerate}
\usepackage{rotating}
\usepackage[round]{natbib}%harvardand in und umdefiniert in zeile 1039
\usepackage{siunitx}
\usepackage{longtable}	%neu
\usepackage{tabularx}	%neu
\usepackage{scrpage2}
\usepackage{subfig}
\usepackage[below]{placeins}
\usepackage{flafter}
\usepackage{picins}
\usepackage{gnuplottex}
\usepackage[percent]{overpic}
\usepackage[colorlinks, linkcolor=blue]{hyperref}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usepackage{booktabs}
 \usepackage{array}
 \usepackage{colortbl}
\pgfplotsset{compat=newest}
\usepackage{showkeys}

\begin{document}

\pgfplotstableread
{pqebt.txt}
{\loadedtable}


\begin{flushright}
\begin{figure}
\begin{tikzpicture}[trim left, scale=0.85]
\begin{axis}[
xmin=0, xmax=400,
xlabel={\texttt{Step} [$-$]},
ylabel= {$p~ \SI{}{[\kilo \pascal]}$},
grid=major,
]

\addplot table [x=Step,y=p1]  from \loadedtable;

\node [rotate=90, anchor=west] at (rel axis cs:0.045,0.0) {\colorbox{white}{\scriptsize Aushub}};
\draw [densely dashed] (rel axis cs:0.075,0) -- (rel axis cs:0.075,1);

\node [rotate=90, anchor=east] at (rel axis cs:0.25,1) {\colorbox{white}{\scriptsize  t = \SI{4}{\metre} bis \SI{1.2}{\metre}}};
\draw [densely dashed] (rel axis cs:0.28,0) -- (rel axis cs:0.28,1);

\node [rotate=90, anchor=east] at (rel axis cs:0.4275,1) {\colorbox{white}{\scriptsize  t = \SI{1}{\metre}}};
\draw [densely dashed] (rel axis cs:0.4575,0) -- (rel axis cs:0.4575,1);

\node [rotate=0, anchor=north west ] at (rel axis cs:0.4675,0.95) {\colorbox{white}{\scriptsize  t = \SI{0.8}{\metre} (Versagen)}};
\draw [->] (rel axis cs:0.4675,0.85) -- (rel axis cs:0.98,0.85);

\end{axis}
\end{tikzpicture}
\caption{Hier ist ein linearer Verlauf und ich kann problemlos bestimmte Punkte markieren.}
\end{figure}
%
%
\hspace{10ex}%-----------------------
%
%
\begin{figure}
\begin{tikzpicture}[trim left, scale=0.85]
\begin{axis}[scaled ticks=false,
yticklabel style={ /pgf/number format/fixed, /pgf/number format/precision=5},
xlabel={$p ~\SI{}{[\kilo \pascal]}$},
ylabel= {$\varepsilon_V ~ \SI{}{[\percent]}$},
grid=major,
]

\addplot table [x=p1,y expr=\thisrow{e1}*100]  from \loadedtable;

\end{axis}
\end{tikzpicture}
\caption{Hier ist der Verlauf nicht linear und der Punkt  befindet sich nach 31  Steps  (entspricht Aushub von Abbildung 0.1) jedes mal an einer anderen Stelle der X-Achse.}
\end{figure}

\end{flushright}
\end{document}


kilian
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 6. Feb 2013, 16:13

Beitrag von kilian »

:cry: kann die *.txt Datei nicht hochladen ???

Epllus
Forum-Guru
Forum-Guru
Beiträge: 470
Registriert: So 23. Sep 2012, 17:31

Beitrag von Epllus »

1. Dein Beispiel ist nicht minimal.
2. Das Hochladen funktioniert leider seit einiger Zeit nicht mehr :(
3. Du kannst die *.tex mittels "filecontents" eindinden:
\RequirePackage{filecontents}
\begin{filecontents}{pqebt.txt}
% Inhalt dieser Datei
\end{filecontents} % Danach documentclass
4. Statt color kannst du xcolor verwenden.
5. Bei amsmath gibt es die Erweiterung mathtools
5. Siehe Punkt 1 & 3

Epllus

kilian
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 6. Feb 2013, 16:13

Beitrag von kilian »

Ok ich habs gelöst.
Mein erstes Problem war das mein pgfplot package veraltet war...

der code lautet:
%
\addplot table [x=p1,y expr=\thisrow{e1}*100]  from \loadedtable
[right,/pgf/number format/relative=0]
node[pos=0.3] {%
\pgfplotspointplotattime
$(node)$
}
{}
;
ich muss mir dann halt nur aus der Anzahl meiner Datenpunkte den Relativwert des 31´ten Punktes ausrechnen. Der Verlauf der Punkte kann dann auch ruhig "schlenker" machen :P.

Siehe dazu auch S. 261 des pgfplots manual V 1.7

Antworten