% Häufigkeitsverteilung (Randomized)
% Kap. Messwertverarbeitung
% M.Hess / D. Büchler 3.7.2000

%Benutzerabfrage
clc;                             %Löschen des command window
clear;                           %Löschen allfälliger Variabeln
r = input('Wiederholungen = ');  %Eingabemöglichkeit
delay = input('Verzögerung [s] = ');
figure('Name',strcat('Häufigkeitsverteilung; ',num2str(r),' Wiederholungen'),'NumberTitle','off'); %Anpassen des Figure-windows

for i = 1 : r,
  %Berechnungen
  wn = randn(1,150);             %Generiert 150 Zufallszahlen
  mean_wn = mean(wn);            %Mittelwert aller wn
  min_wn = min(wn);              %Minimalwert von wn
  max_wn = max(wn);              %Maximalwert von wn

  distrib = hist(wn,20);         %Verteilung der einzelnen Klassen
  peak = max(distrib);           %Höchster Peak für Beschriftung
  cumul_wn = cumsum(distrib)./ sum(distrib);   %aufsummieren + normieren von distrib

  %Grafikausgaben
  subplot(3,1,1);                %erster Subplot
  plot(wn);
  title('Normalverteilung','FontSize',9);     %Titel, Achsen inkl Werte, etc.
  xlabel('Generierte Zahl','FontSize',9);
  ylabel('Wert','FontSize',9);
  
  subplot(3,1,2);               %zweiter Subplot
  hist(wn,20);                  %plotted Histogramm, 20 Klassen
  axis([(min_wn),(max_wn),0,(peak+5)]); %Platz schaffen für Beschriftung
  title('Histogramm','FontSize',9);     %Titel, Achsen inkl Werte, etc.
  xlabel(strcat('Generierte Zahl (Min.= ',num2str(min_wn),'; Max.= ',num2str(max_wn),')'),'FontSize',9); 
  ylabel('Anzahl Auftreten','FontSize',9);
  text(mean_wn,(peak+2),strcat('\downarrow Mittelwert=',num2str(mean_wn)),'FontSize',9); %Bezeichnet Mittelwert

  subplot(3,1,3);               %dritter Subplot
  plot(cumul_wn);
  title('Häufigkeitssumme','FontSize',9);    %Titel, Achsen etc.
  xlabel('Klassen','FontSize',9); 
  ylabel('Aufsummiert (normiert)','FontSize',9);
  pause(delay);
end;