Graphik kommentieren

Tabellen und Grafiken erstellen und anordnen


jaunita
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 24. Sep 2020, 05:34

Graphik kommentieren

Beitrag von jaunita »

\documentclass[12pt,oneside]{report}
\usepackage{xcolor}
\usepackage{tikz} 

\begin{document}
\begin{figure}[h!]
\centering
\begin{tikzpicture}[scale=1]
\begin{axis}
[xmin=0, xmax=3.8, ymin=0, ymax=24, xlabel=$\pmb{x}$, ylabel=$\pmb{p}$, ticks=none,
label style={color=black,font=\bfseries}, axis x line=bottom, axis y line=left, x label style={at={(current axis.right of origin)},anchor= north, left=-5mm},
y label style={at={(current axis.above origin)},rotate=270, anchor=east, above=.5mm},
samples=5,]

% add line
\addplot[YellowGreen, thick, mark=none] (x,20-5*x) node[above]{$x^A(p)$}; % demand 
\addplot[blue, thick, mark=none] (x, 2+4*x); % supply
\addplot[orange, thick, mark=none] (x, x*0+10); % supply


% add shaded area
\addplot[fill=YellowGreen, draw=none, fill opacity=0.5] coordinates {(0,20) (2,10) (0,10)} \closedcycle;
\addplot[fill=blue, draw=none, fill opacity=0.4] coordinates {(0,2) (0,10) (2,10) (0,2)} \closedcycle;

% add dotted lines
\draw[thick, white, dotted] (axis cs:2,0) -- (axis cs:2,10);
\draw[thick, transparent, dotted] (axis cs:0,10) -- (axis cs:2,10); \end{axis}
\draw[dashed]  (0,2.36) -| (3.6,0) node[below]{$x^{\ast}$};
\draw[thin]  (2.4,0) -| (0,2.4) node[left]{$p^{\ast}$};
\draw [black, fill=black]  (3.625,0) circle (2pt);
\draw [black, fill=black]  (0,2.36) circle (2pt);

\end{tikzpicture}
\caption{Gleichgewicht auf vollständigen Märkten}
\end{figure}

\end{document}

Würde gerne die Flächen innerhalb der figure-Umgebung bezeichnen und auch die Kurven jeweils am Ende. Leider funktioniert "node" nicht mit \addplot oder ich weiß nicht, wie das geht. Daher wäre ich um Hilfe sehr dankbar!

Zuletzt geändert von Stefan Kottwitz am So 22. Nov 2020, 16:48, insgesamt 2-mal geändert.
Grund: offtopic Werbelink entfernt

cis
Forum-Anfänger
Forum-Anfänger
Beiträge: 47
Registriert: Mi 22. Jul 2020, 20:14

Re: Graphik kommentieren

Beitrag von cis »

Bei Deinem Beispiel fehlen Pakete. Ferner gibt es undefinierte Kommandos.
Es ist so nicht lauffähig.
Abgesehen davon ist mir unklar, wo genau da was für eine Beschriftung stehen soll; kann m.E. auch niemand außer Dir selbst wissen...

Ansonsten kann man normalerweise schon
\addplot[...]{....} node[...]{...};
machen.

Hier dürfte es vermutlich eher daraus rauslaufen, dass man ganz normal eine node ergänzt
\node[...] at (...,...) {....};

Aber wie gesagt: ich habe keine Ahnung, was da am Ende rauskommen soll. (Tip: ein erklärendes Bild [Paint etc.] sagt meistens mehr als 1000 Worte.)


Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Re: Graphik kommentieren

Beitrag von Bartman »

Auch ich möchte mich dem Wunsch nach einem Minimalbeispiel anschließen.

Wenn bspw. der sichtbare Bereich der Geraden an irgendeiner Stelle beschriftet werden soll, dann kannst Du dafür die Option domain der Umgebung axis benutzen und diese auf das Minimum sowie Maximum der x-Achse begrenzen, damit man den von \addplot abhängigen Knoten über dessen optionales Argument an die gewünschte Position setzen kann. Mithilfe der Option clip der axis-Umgebung kann man einstellen, ob Beschriftungen, wie z. B. p* und x*, jenseits der Achsen ausgegeben werden.

Die Knoten für die Beschriftung der Flächen könnten sich an p* orientieren.


Antworten