Hallo, ich habe ein Diagramm erstellt, in dem ich gerne die Farbe der Punkte ändern würde und in das ich beschriftete waagerechte und senkrechte Pfeile einfügen möchte.

Open in Online-Editor
\documentclass[tikz,margin=10pt]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}

\begin{axis}[
ymin=0,
xmin=0,
xmax=200,
black
]
\addplot+[smooth,black,solid,line width=0.7pt] coordinates
{(25,-0.5)(50,13) (120,45) (190,80) (210,86)};

\end{axis}
\end{tikzpicture}
\end{document}

Kann mir jemand helfen?

gefragt 12 Apr '15, 19:10

roadrunner_ac's gravatar image

roadrunner_ac
593913
Akzeptiert-Rate: 0%

bearbeitet 13 Apr '15, 16:22

esdd's gravatar image

esdd
17.7k254256

Bitte stelle immer nur eine Frage.

(12 Apr '15, 22:00) esdd

Farbe der Marker

In einer axis Umgebung werden oft mehrere Plots dargestellt. Damit diese unterschieden werden können, wird eine sogenannte cycle list verwendet, die dann je nach Plotnummer unterschiedliche Farben, Marker oder auch Linienstile verwendet. Das Paket pgfplots stellt bereits verschiedene cycle list bereit. Standardmäßig wird die mit color bezeichnete verwendet, die wie folgt definiert ist:

Open in Online-Editor
\pgfplotscreateplotcyclelist{color}{%
    blue,every mark/.append style={fill=blue!80!black},mark=*\\%
    red,every mark/.append style={fill=red!80!black},mark=square*\\%
    brown!60!black,every mark/.append style={fill=brown!80!black},mark=otimes*\\%
    black,mark=star\\%
    blue,every mark/.append style={fill=blue!80!black},mark=diamond*\\%
    red,densely dashed,every mark/.append style={solid,fill=red!80!black},mark=*\\%
    brown!60!black,densely dashed,every mark/.append style={
    solid,fill=brown!80!black},mark=square*\\%
    black,densely dashed,every mark/.append style={solid,fill=gray},mark=otimes*\\%
    blue,densely dashed,mark=star,every mark/.append style=solid\\%
    red,densely dashed,every mark/.append style={solid,fill=red!80!black},mark=diamond*\\%
}

Entsprechend dieser Liste wird der erste Plot blau gezeichnet und dessen Marker haben die Form * (gefüllter Kreis) und sind mit der Farbe blue!80!black gefüllt. Die Verwendung dieser Voreinstellung kann man abschalten, in dem man bei \addplot das optionale Argument verwendet, das auch leer sein kann. Verwendet man dagegen \addplot+, dann werden die im optionalen Argument vorhandenen Optionen nur ergänzt. In Deinem Beispiel wird deshalb die Farbe zum Füllen der Marker nicht mit geändert. Den Stil für die Marker kann man mit every mark/.append style ergänzen oder every mark/.style oder kürzer mark options neu setzen.

Hier ist ein Vorschlag mit \addplot[...]

Open in Online-Editor
\documentclass[margin=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ymin=0,xmin=0,xmax=200,
  every axis plot/.append style={smooth,line width=.7pt}
]
\addplot[mark=*,
    %mark options={fill=orange}% falls andere Füllung als schwarz
  ]coordinates{(25,-0.5)(50,13) (120,45) (190,80) (210,86)};
\end{axis}
\end{tikzpicture}
\end{document}

und mit \addplot+[...]

Open in Online-Editor
\documentclass[margin=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ymin=0,xmin=0,xmax=200,
  every axis plot/.append style={smooth,line width=.7pt}
]
\addplot+[black,mark options={black}]
  coordinates{(25,-0.5)(50,13) (120,45) (190,80) (210,86)};
\end{axis}
\end{tikzpicture}
\end{document}

Da ich davon ausgehe, dass alle Plots in der axis Umgebung die gleiche Linienbreite haben und smooth verwenden sollen, habe ich das in die Optionen der gesamten Umgebung geschrieben.

Ergebnis in beiden Fällen:

alt text


Du kannst Dir natürlich auch eine eigene cycle list zum Beispiel mit dem Namen mylist definieren und diese dann mit cycle list name=mylist für die axis Umgebung verwenden. Das hat den Vorteil, dass Du auf einfache Art für mehrere Diagramme die gleichen von Dir vorgegebenen Einstellungen für die Plots verwenden kannst.

Open in Online-Editor
\documentclass[margin=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\pgfplotscreateplotcyclelist{mylist}{%
  black,mark=*\\%
  orange,every mark/.append style={fill=green,draw=red},mark=square*\\%
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ymin=0,xmin=0,xmax=200,
  every axis plot/.append style={smooth,line width=.7pt},
  cycle list name=mylist
]
\addplot coordinates{(25,-0.5)(50,13) (120,45) (190,80) (210,86)};
\addplot coordinates{(25, 9.5)(50,23) (120,55) (190,90) (210,96)};
\end{axis}
\end{tikzpicture}
\end{document}

liefert

alt text


Pfeile

Mir ist nicht klar, wo Du die Pfeile haben möchtest, wie diese aussehen sollen und wo die Beschriftung stehen soll. Deshalb ist hier nur ein Vorschlag als Ausgangspunkt

Open in Online-Editor
\documentclass[margin=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}[
  pfeil/.style={shorten <=1mm,>=latex,<-}
]
\begin{axis}[ymin=0,xmin=0,xmax=200,
  every axis plot/.append style={smooth,line width=.7pt},
]
\addplot[mark=*]
  coordinates{(25,-0.5)(50,13) (120,45) (190,80) (210,86)};
\draw [pfeil](50,13)--+(0,1cm)node[above]{Text 1};
\draw [pfeil](50,13)--+(1cm,0)node[right]{Text 2};
\draw [pfeil](120,45)--node[left]{Text 3}+(0,1cm);
\draw [pfeil](120,45)--node[above]{Text 4}+(2cm,0);
\end{axis}
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 12 Apr '15, 21:59

esdd's gravatar image

esdd
17.7k254256
Akzeptiert-Rate: 62%

Perfekt :)

Genau das habe ich gesucht. Vielen Dank.

(13 Apr '15, 19:42) roadrunner_ac
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×728
×296

gestellte Frage: 12 Apr '15, 19:10

Frage wurde gesehen: 16,659 Mal

zuletzt geändert: 13 Apr '15, 19:42