Anzeige:
Ergebnis 1 bis 5 von 5

Thema: nodes near coords aus Tabelle

  1. #1
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62

    nodes near coords aus Tabelle

    moin,

    ich will eine Kalibrierkurve in einem Diagramm darstellen. Die Abweichung der Messpunkte soll als node dargestellt werden. Die Abweichung wird dabei ebenfalls aus einer Tabelle ausgelesen. Im Moment sieht das so aus:

    Code:
    \documentclass[12pt, oneside, a4paper,landscape]{scrreprt}
    
    \usepackage[latin1]{inputenc}																		% Umlaute
    \usepackage[ngerman]{babel} 																		% Sprache
    \usepackage{siunitx}																					% Darstellen von Einheiten
    \usepackage[light,math]{iwona}																	% andere Schrift
    \usepackage{tikz}																						% Zeichnen in LaTeX
    \usepackage{pgfplots}																				% Zeichnen von Diagrammen
    \usepackage{pgfplotstable}																			% Achsen ticks bearbeiten
    \usepackage[version=3]{mhchem} 																	% Chemische Ausdrücke darstellen z.B. \ce{CO2}
    \usepackage{lscape}																					% darstellen von Querseiten
    
    \usetikzlibrary{arrows,shapes,snakes,automata,backgrounds,petri,spy,decorations.pathreplacing}
    
    \begin{document}
    
    \begin{figure}
    \centering
    	\begin{tikzpicture}
    		\begin{axis}[
    		title=\large{Abweichung zwischen a und b},
    		scale only axis,
    		xmin=0, xmax=4,
    		xtick={0,0.3,...,4},
    		width={22cm},
    		height={12cm}, 
    		ymin=0, ymax=4,
    		ytick={0,0.3,...,4},
    		xlabel={\large{Volumenstrom ist}},
    		ylabel={\large{Volumenstrom soll}},
    		grid=major,
    		legend style={
    			at={(axis cs:0.01,3.9)},
    			anchor=north west,
    			},
    		]
    			\addplot[black,mark=none] table[x=DryCal,y=DryCal,]{Tabelle.txt};
    			\addlegendentry{\small{\ce{CO2} Volumenstrom Drycal}};
    			
    			\addplot+[red,mark=x,mark options={scale=2},only marks,nodes near coords,point meta=explicit symbolic] table[y=DryCal,x=FIC,meta=ABW]{Tabelle.txt};
    			\addlegendentry{\small{\ce{CO2} Volumenstrom dosierter und Abweichung in \%}};
    			
    		\end{axis}
    
    	\end{tikzpicture}
    \end{figure}
    \end{document}
    und die Tabelle als .txt Datei (ich weis grad nicht wie ich die in mein Minimalbeispiel integrieren kann)

    Code:
    FIC	DryCal	ABW
    0.3	0.3	\small{\SI{0}{\percent}}
    0.6	0.6	\small{\SI{0}{\percent}}
    0.9	0.9	\small{\SI{0}{\percent}}
    1.2	1.21	\small{\SI{0.8}{\percent}}
    1.5	1.51	\small{\SI{0.7}{\percent}}
    2	2.02	\small{\SI{1}{\percent}}
    2.5	2.53	\small{\SI{1.2}{\percent}}
    3	3.03	\small{\SI{1}{\percent}}
    3.5	3.53	\small{\SI{0.8}{\percent}}
    Prinzipiell funktioniert das so... ich hätte aber gern dass in der Tabelle nur die Prozentzahl steht. Die Formatierung der Zahl (also Größe, Farbe ect.) würde ich gerne im .tex file machen, ähnlich wie
    Code:
    \newcommand{irgendwas}[1]{\small{\SI{#}{\percent}}}
    wobei aus der Tabelle nur der # Wert gelesen wird.

    Geht so etwas?

    Viele Grüße,
    Josch

  2. #2
    Registrierter Benutzer
    Registriert seit
    23.07.2010
    Beiträge
    96
    Hallo JOsch,

    das geht: das 'nodes near coords' ist aequivalent zu 'nodes near coords=\pgfplotspointmeta' - und der wert von \pgfplotspointmeta das, was Du in der tabelle definiert hast.

    Wenn Du nun 'nodes near coords=\small{\SI{\pgfplotspointmeta}{\percent}}' schreibst, sollte es passen (und natuerlich das datenfile abaenderst sodass nur die zahlen drinstehen).

    Mit liebem Gruss

    Christian

  3. #3
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62
    n Abend,

    super genau das was ich gesucht habe
    vielen Dank Feuersaenger!

    noch eine kleine Schönheitskorrektur, kann ich den Abstand node <-> coordinate verändern? Also ich würde die nodes gerne etwas höher setzten.

    Viele Grüße,
    Josch

  4. #4
    Registrierter Benutzer
    Registriert seit
    23.07.2010
    Beiträge
    96
    Hallo JOSch,

    sicher, man kann da styles anpassen: irgendwie sowas wie 'node near coord style={yshift=5pt}' oder so. Details muesste ich auch nachlesen; aber 'yshift' ist auf jeden Fall das, was wohl helfen wird.


    Mit liebem Gruss

    Christian

  5. #5
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62
    hi,

    und nochmal vielen Dank Christian!

    Code:
    every node near coord/.style={yshift=5pt}
    hat geholfen.

    Viele Grüße,
    Josch

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •