Moin zusammen, bei folgenden, beiden Digrammen möchte ich statt schrittliche Beschreibung für Graphen zwei Bilder einfügen. Das heißt, dass ich erstens zwei Kreise jeweils in einem rechteckigen Rahmen mit weißem Hintergrund einfügen und danach als Beschreibung für beide Kurve auf jeweilige Kurve legen möchte (blaue Kurve gehört zum blauen Kreis und rote Kurve zum roten Kreis). Kann jemand mir damit helfen? Viele Dank! Open in Online-Editor
\documentclass{article} \usepackage{pgfplots} \usepackage{tikz} \begin{document} \begin{tikzpicture} \begin{axis}[% width=4.521in, height=3.566in, at={(0.758in,0.481in)}, scale only axis, separate axis lines, every outer x axis line/.append style={black}, every x tick label/.append style={font=\color{black}}, xmin=0, xmax=6, every outer y axis line/.append style={black}, every y tick label/.append style={font=\color{black}}, ymin=0, ymax=900, axis background/.style={fill=white}, legend style={legend cell align=left,align=left,draw=black} ] \begin{scope} \draw[fill=red!, opacity=0.5] (300,500) circle (20pt); \end{scope} \draw[fill=blue!, opacity=0.5] (200,400) circle (20pt); \addplot [color=blue,solid] table[row sep=crcr]{% 0 1\\ 1 2.71828182845905\\ 2 7.38905609893065\\ 3 20.0855369231877\\ 4 54.5981500331442\\ 5 148.413159102577\\ 6 403.428793492735\\ }; \addlegendentry{case 1}; \addplot [color=blue,solid] table[row sep=crcr]{% 0 2\\ 1 5.43656365691809\\ 2 14.7781121978613\\ 3 40.1710738463753\\ 4 109.196300066288\\ 5 296.826318205153\\ 6 806.85758698547\\ }; \addlegendentry{case 2}; \addplot [color=red,solid,forget plot] table[row sep=crcr]{% 0 2\\ 1 5.43656365691809\\ 2 14.7781121978613\\ 3 40.1710738463753\\ 4 109.196300066288\\ 5 296.826318205153\\ 6 806.85758698547\\ }; \end{axis} \end{tikzpicture}% \end{document} gefragt 02 Dez '15, 12:34 vague_creature esdd |
Ich habe aus dem Beispiel mal die überflüssigen Optionen rausgenommen und das Zeichnen des zweiten Plots zunächst in blau sowie das Du kannst am Ende eines Plots einen Node angeben und mit der Option Open in Online-Editor
\addplot ... node[pos=.75,draw=black,fill=white,inner sep=11pt]{} node[pos=.75,circle,fill,inner sep=6pt,opacity=.5]{}; Wenn Du mehrere dieser Bildchen brauchst und die einheitlich sein sollen, kann man sich dafür ein Open in Online-Editor
\documentclass{article} \usepackage{pgfplots} \pgfplotsset{compat=newest} \tikzset{ kreisbox/.pic={ \node(rahmen)[draw=black,fill=white,inner sep=11pt]{}; \node[circle,fill,inner sep=6pt,opacity=.5]{};} } \begin{document} \begin{tikzpicture} \begin{axis}[% width=4.521in, height=3.566in, at={(0.758in,0.481in)}, scale only axis, xmin=0, xmax=6, ymin=0, ymax=900, legend style={column sep=5pt,legend cell align=left,align=left} ] \addplot [color=blue] table[row sep=crcr]{% 0 1\\ 1 2.71828182845905\\ 2 7.38905609893065\\ 3 20.0855369231877\\ 4 54.5981500331442\\ 5 148.413159102577\\ 6 403.428793492735\\ }pic[pos=.75]{kreisbox}; \addplot [color=red] table[row sep=crcr]{% 0 2\\ 1 5.43656365691809\\ 2 14.7781121978613\\ 3 40.1710738463753\\ 4 109.196300066288\\ 5 296.826318205153\\ 6 806.85758698547\\ }pic[pos=.75]{kreisbox}; \end{axis} \end{tikzpicture}% \end{document} ergibt Wenn die Markierungen auch als Beschreibung in die Legende sollen, dann ist es besser sie in einer Box zu speichern, siehe auch Wie kann ich Bilder in Legende eines Diagramms einfügen?. Open in Online-Editor
\documentclass{article} \usepackage{pgfplots} \pgfplotsset{compat=newest} \newbox\mybox \newcommand{\tikzBox}[2][\mybox]{\sbox#1{\pgfinterruptpicture#2\endpgfinterruptpicture}} \tikzset{ kreisbox/.pic={ \node(rahmen)[draw=black,fill=white,inner sep=11pt]{}; \node[circle,fill,inner sep=6pt,opacity=.5]{};} } \begin{document} \begin{tikzpicture} \newbox\caseI \newbox\caseII \tikzBox[\caseI]{\tikz\pic[blue]{kreisbox};} \tikzBox[\caseII]{\tikz\pic[red]{kreisbox};} \begin{axis}[% width=4.521in, height=3.566in, at={(0.758in,0.481in)}, scale only axis, xmin=0, xmax=6, ymin=0, ymax=900, legend style={column sep=5pt,legend cell align=left,align=left} ] \addplot [color=blue] table[row sep=crcr]{% 0 1\\ 1 2.71828182845905\\ 2 7.38905609893065\\ 3 20.0855369231877\\ 4 54.5981500331442\\ 5 148.413159102577\\ 6 403.428793492735\\ }node[pos=.75]{\usebox\caseI}; \addlegendentry{\scalebox{.5}{\usebox\caseI}} \addlegendentry{\scalebox{.5}{\usebox\caseII}} \addplot [color=red] table[row sep=crcr]{% 0 2\\ 1 5.43656365691809\\ 2 14.7781121978613\\ 3 40.1710738463753\\ 4 109.196300066288\\ 5 296.826318205153\\ 6 806.85758698547\\ }node[pos=.75]{\usebox\caseII}; \end{axis} \end{tikzpicture}% \end{document} ergibt beantwortet 02 Dez '15, 16:06 esdd |
Ist das nicht genau die gleiche Frage wie: Wie kann ich Bilder in Legende eines Diagramms einfügen?
Da war ich auch am Zweifeln. Aber hier ging es vermutlich hauptsächlich um die Positionierung der beiden Bilder auf den Plots, während es in der anderen Frage um die Bilder als Beschreibung in der Legende ging. Und in der anderen Frage war nicht fest gelegt, ob es externe Abbildungen sein sollen oder wie hier direkt gezeichnete. Wenn es dort auch nur um direkt gezeichnete ging, dann wäre die andere Frage ein Duplikat zu der hier.
@esdd: Aha. Für mich sah und sieht das schlicht so aus, als habe @vague_creature die Frage hier noch einmal ein klein wenig anders formuliert, zumal keinerlei Verweis auf die andere (eher geringfügig ältere) Frage vorhanden ist und nicht angegeben ist, was der entscheidende Unterschied sein soll. Deshalb wollte ich noch einmal nachfragen, ob es einen solchen tatsächlich gibt. Falls es den gibt, wäre es vielleicht trotzdem sinnvoll gewesen, die erste Antwort abzuwarten, um darauf Bezug nehmen zu können? Ich lasse mich aber gerne eines besseren belehren.
@saputello: Ich habe jetzt zumindest mal beide Antworten so bearbeitet, dass man bei denen vielleicht den wirklich kleinen Unterschied sieht. Aber Du kannst gerne eine der beiden Fragen als Duplikat der anderen schließen.