WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Berechnung 3D Histogramm

 

mick

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.11.2008, 09:23     Titel: Berechnung 3D Histogramm
  Antworten mit Zitat      
Hallo Zusammen!

Ich möchte mit dem Befehl surf ein 3D-Histogramm erstellen, in dem auf der X- und der Y- Achse die Datenwerte dargestellt sind. Auf der Z-Achse soll die relative Häufigkeit der Datenwerte dargestellt werden, die ich bereits mit dem Befehl histc ermittelt habe.

Mein Problem besteht darin, die Matrix Z richtig zu berechnen, in der die realtiven Häufigkeiten eingetragen sind.

Bisher habe ich folgendes programmiert, ich erhalte aber nicht das gewünschte Ergebnis:

Code:

% Datensätze X,Y
X = randn(1,1000);
Y = randn(1,1000);

% Vektor mit linspace
X_edges = linspace(min(X),max(X),10);
Y_edges = linspace(min(Y),max(Y),10);

% Histc: _n gibt relative Häufigkeit,
%          _bin gibt Klassen an
[X_n, X_bin] = histc(X,X_edges);
[Y_n, Y_bin] = histc(Y,Y_edges);

% Vordefinition Z
Z = zeros(10,10);

% Schreibe Inhalte von X_n, Y_n aller Klassen in Z
for m = 1:10;
    for n = 1:10;
        Z(m,n) = X_n(m) + Y_n(n);
       
    end
end

% Plot
surfc(X_edges,Y_edges,Z)
xlabel('data X');
ylabel('data Y');
zlabel('Häufigkeit');
Colormap jet
 



Probleme hab ich in dieser Zeile, die vermutlich auch nicht stimmt:

Code:

Z(m,n) = X_n(m) + Y_n(n);
 


Hat jemand eine Idee wie man das lösen kann?


Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 17.11.2008, 10:29     Titel:
  Antworten mit Zitat      
Die for-Schleifen kannst du umgehen:

Code:

[A,B]=meshgrid(X,Y);
Z=A+B;
 


Wenn du surfc nutzt und Z eine Matrix ist, müssen auch die anderen Eingabeparameter Matrizen sein.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Bijick
Ehrenmitglied

Ehrenmitglied



Beiträge: 914
Anmeldedatum: 18.06.07
Wohnort: Nürnberg
Version: R2006b, R2008b
     Beitrag Verfasst am: 17.11.2008, 12:06     Titel:
  Antworten mit Zitat      
Hallo mick,

kannst Du vielleicht etwas genauer beschreiben, inwiefern Du nicht das gewünschte Ergebnis erhältst? Der Code läuft ja ohne Fehlermeldung durch und die Grafik zeigt auch deutlich die Verteilung der Summe zweier nomalverteilter Zufallsvariablen. Was sollte denn nach Deinem Wunsch herauskommen?

Herzliche Grüße
Bijick
_________________

>> why
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
mick

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.11.2008, 09:46     Titel:
  Antworten mit Zitat      
Hallo Zusammen,

vermutlich habe ich mein Problem zu ungenau beschrieben.

Ich möchte ein 3D Histogramm erstellen. Auf der X-, Y- Achse sollen die Datensätze aufgetragen sein.
Auf der Z-Achse möchte ich die die Häufigkeiten der Datenpunkte darstellen, die pro MAtrixelement auftreten, wenn man den Datensatz Y über Datensatz X 2D aufträgt.
Mein Problem liegt in der Berechnung, d.h Wie könnte ich die Anzahl der Datenpunkte pro Intervall aus einem 2D Diagramm in eine Matrix schreiben?

Vielleicht hat da jemand eine Idee?
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.