Die Situation ist folgendermaßen.

(1) Gegeben sind Datenpunkte (X1,Y1),...,(Xn,Yn) mit Xi, Yi>0 für alle i.

(2) Darüber hinaus ist der Graph einer Funktion f gegeben, deren Definitionsbereich und Wertebreich Teilmengen der positiven reellen Achse sind.

Ich würde gerne bzgl. (1) ein Histogramm zeichnen und in das gleiche Schaubild bzgl. (2) den Graphen der Funktion zeichnen.

Hier ein MWE (Quelle: TeX.SE)

Öffne in Overleaf
\documentclass[border=3mm,
               tikz,
               preview
               ]{standalone}
\usepackage{pgfplots}

    \begin{document}
%---------------------------------------------------------------%
\begin{tikzpicture}
\begin{axis}[
    ymin=0, ymax=55,
    minor y tick num = 3,
    area style,
    ]
\addplot+[ybar interval,mark=no] plot coordinates { (1, 5) (5, 35) (10, 50) (15, 30) (20, 15) (25, 0) };
\end{axis}
\end{tikzpicture}
    \end{document}

Was mir hier fehlt:

  1. Achsenbeschriftung.
  2. Graph der Funktion f(x)=exp(-x)

gefragt 18 Nov '18, 12:16

runix's gravatar image

runix
1.0k247486
Akzeptiert-Rate: 0%

bearbeitet 18 Nov '18, 14:43

1

Gib doch bitte ein MWE mit einem Histogramm sowie eine Definition für eine Funktion f an. Damit würden sich die Chancen auf eine passende Antwort sicher deutlich erhöhen.

(18 Nov '18, 13:55) esdd

Ich sehe deinen Punkt. Habe mich auch bei Tex.Stackexchange umgeschaut und habe keine einheitliche Lösung gefunden. Ich werde aber was ergänzen.

(18 Nov '18, 14:35) runix

Vorab: Bitte gib immer einen Wert für compat an. Siehe dazu: Was bedeutet die Kompatibilitätsangabe "compat=..." bei pgfplots?

Für die eigentliche Lösung gibt es verschiedene Möglichkeiten, wobei zu beachten ist, dass auch das Bildchen für eine eventuell anzugebende Legende mit angepasst wird.

Öffne in Overleaf
\documentclass[border=3mm,tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}% <- compat immer angeben!

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
      ymin=0, ymax=55,
      minor y tick num = 3,
      ylabel=$y$,
      xlabel=$x$,
      area style,
      axis on top=false
      ]
    \addplot+[ybar interval] plot coordinates { (1, 5) (5, 35) (10, 50) (15, 30) (20, 15) (25, 0) };
    \addlegendentry{bar}
    \addplot+[fill=none,line legend,domain=-5:25,samples=100]{e^(-x)};
    \addlegendentry{line}
  \end{axis}
\end{tikzpicture}
%
\begin{tikzpicture}
  \begin{axis}[
      ymin=0, ymax=55,
      minor y tick num = 3,
      ylabel=$y$,
      xlabel=$x$,
      bar cycle list
      ]
    \addplot+[ybar interval,area legend] plot coordinates { (1, 5) (5, 35) (10, 50) (15, 30) (20, 15) (25, 0) };
    \addlegendentry{bar}
    \addplot+[fill=none,domain=-5:25,samples=100]{e^(-x)};
    \addlegendentry{line}
  \end{axis}
\end{tikzpicture}
\end{document}

Beide Vorschläge liefern als Ergebnis:

alt text

Permanenter link

beantwortet 18 Nov '18, 16:06

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

Vielleicht übersehe ich etwas, aber nach dem was Du schreibst suchst Du einfach:
xlabel={$x$}, ylabel={$y$} und \addplot[]{exp(-x)};

alt text

Öffne in Overleaf
\documentclass[border=3mm,tikz,preview]{standalone}
\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[
ymin=0, ymax=55,
minor y tick num = 3,
area style,
xlabel={$x$},%<--
ylabel={$y$},%<--
y label style={at={(axis description cs:0.15,0.95)},rotate=-90,anchor=south},
%x label style={at={(axis description cs:0.5,-0.1)},anchor=north},
]
\addplot+[ybar interval,mark=no] plot coordinates { (1, 5) (5, 35) (10, 50) (15, 30) (20, 15) (25, 0) };
\addplot[red, very thick,samples=200, domain=-5:25]{exp(-x)};%<--
\end{axis}
\end{tikzpicture}

\end{document}
Permanenter link

beantwortet 18 Nov '18, 15:18

cis's gravatar image

cis
9.5k95459491
Akzeptiert-Rate: 29%

bearbeitet 18 Nov '18, 15:21

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:

×298
×28

gestellte Frage: 18 Nov '18, 12:16

Frage wurde gesehen: 7,100 Mal

zuletzt geändert: 18 Nov '18, 19:52