________________________________________________________________________________
Inhalt....: Säulendiagramme und Histogrammdarstellung
Kategorie.: Handwerkskasten
Mathematik: Stochastik, Statistik
MuPAD.....: 3.1.0
Datum.....: 2002-03-03
Autoren...: Kai Gehrs <acrowley@mupad.de>
Funktionen: |, plot, plot::Bars2d, binomial, plot::Function2d, plot::Histogram2d
________________________________________________________________________________
Elementare MuPAD-Funktionen:
Säulendiagramme und Histogrammdarstellung
Wir wollen lernen, wie wir mit MuPAD die bekannten Histogrammdarstellungen entwerfen
können.
Zur Darstellung von Säulendiagrammen jeglicher Art stellt MuPAD die Funktion
plot::Bars2d zur Verfügung. Diese Funktion erhält in der Regel ein Argument
(Es ist durchaus möglich, der Funktion weitere Argumente zu übergeben - dies
geht aber über den Rahmen dessen, was wir hier vorstellen möchten, hinaus.
Man kann sich leicht auf der Hilfeseite zu plot::Bars2d mit dem Aufruf ?plot::Bars2d
oder direkt über den Hilfebrowser informieren).
1. Argument: Eine doppelt geschachtelte Liste mit beliebigen Zahlen, d.h. ein
Objekt der Form [ [ x1, x2, x3, . . . , xk ] ], wobei x1, x2, x,3, . . . , xk
die Höhen der einzelnen Säulen bestimmen.
Als Rückgabewert erhalten wir wie immer ein grafisches Objekt, welches wir
mit dem Befehl plot auf dem Bildschirm ausgeben lassen können.
Ein Aufruf der Funktion ist also in der Regel von der Form
plot( plot::Bars2d( [ [ x1, x2, x3, . . . , xk ] ] ) ).
Dazu einige Beispiele:
Wir betrachten die Binomialverteilung. Dabei bezeichne im folgenden n die
Anzahl der Durchführungen des jeweiligen Experiments, p die Trefferwahr-
scheinlichkeit und k die Anzahl der jeweiligen Treffer. Die in der Schule
übliche Formel zur Berechnung einer solchen Wahrscheinlichkeit geben
wir wie folgt in MuPAD ein:
B := (n, p, k) -> binomial(n,k) * p^k * (1-p)^(n-k)
![]()
Gehen wir von dem üblichen Würfelexperiment aus: Mit einem idealen
Würfel werde 6 mal gewürfelt. Es sei p die Wahrscheinlichkeit, eine 6
zu werfen. Dann können wir die Wahrscheinlichkeitsverteilung der
Zufallsgröße, die die Anzahl der erzielten Sechsen beschreibt, wie
folgt visualisieren:
plot(plot::Bars2d([[B(6,1/6,k) $ k = 0..6]]))

Dabei bedeutet $ k = 0..6, dass die Variable k alle Werte der Menge
{0,1,2,3,4,5,6} durchläuft. Alternativ, aber etwas umständlicher, hätten wir
auch schreiben können:
plot(plot::Bars2d([[B(6,1/6,0),B(6,1/6,1),B(6,1/6,2),
B(6,1/6,3),B(6,1/6,4),B(6,1/6,5),
B(6,1/6,6)]]))

Jetzt erhöhen wir den Wert für n. Setzen wir n einmal auf den Wert
20:
plot(plot::Bars2d([[B(20,1/6,k) $ k = 0..20]]))

Man sieht nun schon leicht, wie sich die rechteckigen Säulen in Form
einer Glocke anordnen. Wir zeichnen die Verteilung nochmals für
n = 100:
plot(plot::Bars2d([[B(100,1/6,k) $ k = 0..100]]))

Auf diese Weise können wir schön verdeutlichen, dass sich die
Binomialverteilung tatsächlich sehr gut durch die Normalverteilung
approximieren.
Als letztes Beispiel betrachten wir den Münzwurf mit einer idealen
Münze. Wir wählen n = 100 und p = 1/2.
plot(plot::Bars2d([[B(100,1/2,k) $ k = 0..100]]))

Hier sehen wir deutlich, wie sich die Rechtecke im Erwartungswert 50
zentrieren. Die Standardabweichung in diesem Beispiel ist gegeben
durch die Quadratwurzel aus n * p * (1-p) und besitzt dadurch den Wert 5.
Eine allgemeine Faustformel ist, dass wir die Binomialverteilung
durch die Normalverteilung recht gut approximieren können, wenn
n * p * (1-p) > 9 gilt. Hier haben wir n * p * (1-p) = 25, d.h. die Faust-
formel ist erfüllt.
Wir definieren die Dichte der Normalverteilung in MuPAD:
phi:= (1/s) * (1 /(sqrt(2*PI))) * exp(-(x-m)^2/(2*s^2))

Dabei bezeichnet m den Erwartungswert und s die Standardabweichung.
Darstellen können wir den Graphen mittels plot::Function2d, wobei
wir für m den Wert 50 (Erwartungswert) und für s den Wert 5
(Standardabweichung) wählen müssen.
plot(plot::Function2d((phi |m=50|s=5), x = 0..100))

Statt Säulendiagramme zu zeichnen, können wir auch direkt auf die
Funktion plot::Histogram2d zurückgreifen. Diese zeichnet Histogramme
im eigentlich Sinne, d.h. Säulendiagramme, deren Gesamtfläche sich
zu 1 addiert (wie so oft im stochastischen und statischen Kontext
gewünscht). Die Funktion plot::Histogram2d erhält für unsere Zwecke
stets drei Argumente:
1. Argument: Eine Liste von Wahrscheinlichkeiten oder relativen
Häufigkeiten, die sich zu 1 aufaddieren.
2. Argument: Eine Gleichung der Form Cells = Liste, wobei Liste
eine Liste zur Positionierung der Histogramme ist.
3. Argument: Die Option Area = 1, die dafür sorgt, dass sich die
Gesamtfläche aller Histogramme zu 1 aufaddiert.
Als Rückgabewert erhalten wir wie immer ein grafisches Objekt, welches wir
mit dem Befehl plot auf dem Bildschirm ausgeben lassen können.
Ein Aufruf der Funktion ist also in der Regel von der Form
plot( plot::Histogram2d( [ x1, x2, x3, . . . , xk], Cells = Liste, Area = 1 ) ).
Wir erproben die Funktion an einem Beispiel: Wir würfeln mit einem
idealen Würfel 10000 mal und sammeln die Ergebnisse in einer Liste Erg:
Wuerfel:= random(1..6):
Erg:= [Wuerfel() $ i = 1..10000]:
Nun zeichnen wir die zugehörigen Histogramme, wobei wir das i-te
Histogramm symmetrisch um die "Augenzahl i" mit Breit 1 positionieren,
so dass die Höhe des betreffenden Histogramms die relative Häufigkeit
angibt:
plot(plot::Histogram2d(Erg, Cells = [i-0.5..i+0.5 $ i = 1..6],
Area = 1))

Wie wir sehen, liegen die Höhen der Histogramme sehr nah beieinander - ein
Zeichen dafür, dass die relative Häufigkeit einer jeden Augenzahl mit
zunehmender Versuchsanzahl in der Tat gegen die Wahrscheinlicheit zu
konvergieren scheint.
________________________________________________________________________________
Aufgaben:
1. Visualisieren Sie die Verteilung, die sich aus folgendem Bernoulli-Experiment ergibt: Ein Glücksgrad wird
n-mal gedreht. Dabei soll das Glücksrad 12 verschiedene Felder aufweisen, die alle mit der gleichen
Wahrscheinlichkeit getroffen werden. Zeichnen Sie Histogrammdarstellungen für n = 10, 20, 50, 100
_______________________________________________________________________________
Anmerkungen:
1. Weitere Anregungen finden Sie unter: http://schule.mupad.de bzw. http://studium.mupad.de
_______________________________________________________________________________