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

Mehrer Histogramme in einem Plot darstellen

 

AnnekeN

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.12.2013, 16:38     Titel: Mehrer Histogramme in einem Plot darstellen
  Antworten mit Zitat      
Ich plotte mehrere Histogramm. Einige davon möchte ich gerne in einem 3dimensionalen Plot nebeneinander darstellen.
Leider funktioniert das nicht so ganz.
Angehängt findet ihr einen Beispielplot aus erst mal zwei Histogrammen (es sollen später 10 werden).
Den ich nach folgendem Code:
Code:

figure(1);

    for p=1:2
        DataLaenge=VektorLaenge(p,ZaehlerWas);
        HistData1=HistAll(p,ZaehlerWas,1:DataLaenge);
        HistData=squeeze(HistData1);
        [nelements,centers]=hist(HistData,20);
        bar3(centers,nelements)
        hold on
    end


erstellt habe (In den ersten drei Zeilen der for-Schleife werden die Daten aus einer ziemlich großen Matrix geholt.)
Die Säulen stecken ineinander. Ich hätte sie gerne nebeneinander.

Vielen Dank im Voraus
Anneke

untitled.jpg
 Beschreibung:
Die Bars sollten hintereinander und nicht ineinander geplottet werden

Download
 Dateiname:  untitled.jpg
 Dateigröße:  36.34 KB
 Heruntergeladen:  454 mal


Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 10.12.2013, 17:11     Titel:
  Antworten mit Zitat      
Hallo Anneke,

Probier mal
Code:
bar3(centers, nelements, 'detached')


Grüße,
Seban
Private Nachricht senden Benutzer-Profile anzeigen
 
AnnekeN

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.12.2013, 17:38     Titel:
  Antworten mit Zitat      
'detached'
Hilft leider nicht. Das Ergebnis sieht immer noch wie der angefügte Plot aus.
Ich vermute, dass das Problem mit in der for-Schleife liegt. Denn so wird einfach über den schon bestehenden Plot drüber gemalt. Vermutlich müsste ich die Daten in der Vorschleife sortieren und dann anschließend auf einmal plotten.
Leider klappt das mit dem Sortieren nicht so einfach. Derzeit probiere ich daran rum.

Viele Grüße
Anneke
 
Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 10.12.2013, 17:48     Titel:
  Antworten mit Zitat      
Ach so, ist mir gar nicht aufgefallen. Ja du überschreibst das immer wieder durch den Aufruf der Plot-Funktion in jedem Schleifendurchlauf.

Erstell erst die Daten und plotte es danach.

Beim Sortieren der Daten könnte man dir ggf. helfen, wenn du Bsp-Daten angibst.

Grüße,
Seban
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
AnnekeN

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.12.2013, 09:23     Titel:
  Antworten mit Zitat      
Hallo,

hab zum Ausprobieren einfach mal zwei Zufallsvektoren genommen.

x(:,1)=rand(40,1);
x(:,2)=rand(40,1);

figure(1);

for p=1:2
[nelements,centers]=hist(x(:,p),20);
bar3(centers,nelements)
hold on
end

Inzwischen bin ich mir nicht mehr sicher ob bar3(Y,Z) der richtige befehl ist. Y ist ein Vektor, durch den Befehl hist(), erhalte ich immer eine neue Y-Achse.
Vielen Dank für die Hilfe
 
Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 15.12.2013, 19:40     Titel:
  Antworten mit Zitat      
Hallo,

Ist das, was du suchst?

Anmerkung: Du benötigst die Schleife nicht, um hist zu berechnen.
Code:
x(:,1)=rand(40,1);
x(:,2)=rand(40,1);

[nelements,centers]=hist(x,20);

bar3(centers,nelements)


Grüße,
Seban
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
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 - 2025 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.