Ich habe einen Plot, der mir die Dimensionen des Schaubilds festlegt: Öffne in Overleaf
% Plot Legt Dimensionen fest \addplot+[] table[header=true]{ % SOLL x expr ={\xMax} x y 1 2 3 4 }; Nun habe ich einen zweiten Plot, der Daten enthält, die alle an der selben Stelle stehen soll (klingt komisch hat aber Sinn): Öffne in Overleaf
% Aliaswerte \pgfmathsetmacro{\xAlias}{2} \pgfmathsetmacro{\yAlias}{1} % Plot dient nur für Annotationen \addplot+[nodes near coords={\xAlias,\yAlias}] table[header=true, x expr =\xAlias, y expr=\yAlias]{ % a 1 2 3 }; Frage: Wie kann ich Werte Ich hatte an sowas wie den Mittelwert aus Vollständiges MWE: Öffne in Overleaf
\documentclass[margin=5mm, tikz]{standalone} \usepackage{pgfplots} \pgfplotsset{compat=1.13} \begin{document} \begin{tikzpicture} \begin{axis}[] \pgfkeysgetvalue{/pgfplots/xmin}{\xmin} \pgfkeysgetvalue{/pgfplots/xmax}{\xmax} % Plot Legt Dimensionen fest \addplot+[] table[header=true]{ % SOLL x expr ={\xMax} x y 1 2 3 4 }; % Aliaswerte \pgfmathsetmacro{\xAlias}{2} \pgfmathsetmacro{\yAlias}{1} % Plot dient nur für Annotationen \addplot+[nodes near coords={\xAlias,\yAlias}] table[header=true, x expr =\xAlias, y expr=\yAlias]{ % a 1 2 3 }; \end{axis} \end{tikzpicture} \end{document} gefragt 20 Sep '18, 22:27 cis
Ergebnis 5 von 13
show 8 more comments
|
(Damitstaruahgibst.;-)
Beispiel Öffne in Overleaf
\documentclass[margin=5mm, tikz]{standalone} \usepackage{pgfplots} \pgfplotsset{compat=1.13} \begin{document} \begin{tikzpicture} \begin{axis}[] % Plot Legt Dimensionen fest \addplot+[opacity=0,nodes near coords={\pgfkeysgetvalue{/pgfplots/xmin}{\xmin} \pgfkeysgetvalue{/pgfplots/xmax}{\xmax} \xdef\xmin{\xmin} \xdef\xmax{\xmax}}] table[header=true]{ % SOLL x expr ={\xMax} x y 1 2 3 4 }; \end{axis} \typeout{Pffft:\xmin,\xmax} \begin{axis}[enlargelimits=0] \addplot+[] table[header=true]{ % SOLL x expr ={\xMax} x y 1 2 3 4 }; % Plot dient nur für Annotationen \addplot+[nodes near coords={\xmin,\xmax}] table[header=true, x expr =\xmin, y expr=\xmax]{ % a 1 2 3 }; \end{axis} \end{tikzpicture} \end{document} beantwortet 22 Sep '18, 05:46 Community |
Wozu soll das gut sein? Du zeichnest einen Plot, der lediglich aus einer einzigen Koordinate besteht. Eine
\node
mit dem entsprechenden plotmark und den labels tut das selbe.Den Sinn muss man hier nicht verstehen. Mir geht es einfach nur darum automatisch Werte zu finden, die in allen Fällen innerhalb der Dimensionen liegen und diese in einem weiteren Plot, der die Dimensionen nicht vergrößert, zu verwenden.
Aber das kannst Du doch mit einer node machen, halt bloss nicht mit addplot...
Doch, es muss zwingend ein addplot sein.
Wie Du die Maxima und Minima von Tabellen rausfindest, ist beispielsweise hier beschrieben...
Ja, das ist eine gute Methode. Habe ich glaub sogar schonmal benutzt. Jetzt kommt wieder das (teils bughafte) Problem, dass es addplots gibt, die nur Inlinetables zulassen. Aber der Hinweis: https://tex.stackexchange.com/questions/55349/how-can-i-automatically-mark-local-extrema-with-pgfplots-and-scatter könnte gehen.
Glaub ich nicht, siehe meinen Kommentar zu Deiner anderen Frage. In dem Link dort wird genau das versucht, woran Du gerade zu denken scheinst.
Vielleicht erklärt das, wieso ich gerade nur den maximalen x-Wert, nicht aber den maximalen y-Wert auslesen kann. Weil das so ein meta-irgendwas ist..
Also ich verstehe das nicht. Ich schaffe es schon xMax, yMax rauszulesen und anzuzeigen in einer node.
Aber nicht als
x expr
zu verwenden...visualization depends on={x \as \xvalue}, visualization depends on={y \as \yvalue}, scatter/@pre marker code/.code={% \ifx\pgfplotspointmeta\pgfplots@metamax \global\let\xMax=\xvalue \global\let\yMax=\yvalue
Mal wieder so ein scheinbar einfaches Problem...
Auch auf die Gefahr hin, mich zu wiederholen: pgfplots grast alle Plots ab, und setzt die Werte erst dann fest. Siehe das Statement auf S. 332: "These values are not only the input: after the survey phase, their values will be overwritten with the resulting computed values. These may differ according to enlargelimits or scale mode." D.h. Du kannst sie definitv nicht in Plots verwenden, jedoch schon in all dem, was danach kommt wie nodes. Was Du natürlich schon machen kannst, ist einen TikZ Plot mit
\draw plot...
einzufügen, evtl. erst nach der axis.Mmmhhh, ich dachte, das ist so ein "Saveproblem", was man ggf. mit Saveboxen o.ä. lösen kann. Klar, die klassischen Methoden sind bekannt.
Du kannst einen Plot erst mal in eine savebox schuster, dort rausfinden, was die Werte sind, und dann einen richtigen Plot mit diesen Werten bauen. Extrem umständlich. Letztlich suchst Du nach einem Analogon von
\fmffreeze
vonfeynmp
, aber so weit ich weiss, gibt es das nicht.Ich habe es jetzt so gelöst
` % Möglichst eingeben: xdefBeliebigesVorhandenesKoordinatenpaar{{-1.23, 4.58}} % 0,0
% und damit wird verwendet
% Aliaswerte für Aliasplot (Winkelplot) pgfmathsetmacro{xAlias}{BeliebigesVorhandenesKoordinatenpaar[0]} pgfmathsetmacro{yAlias}{BeliebigesVorhandenesKoordinatenpaar[1]} %xAlias, yAlias `
Das ist eben nicht so elegant.