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

Fehlerbalken Säulendiagramm

 

MechIng123
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 04.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.06.2019, 14:04     Titel: Fehlerbalken Säulendiagramm
  Antworten mit Zitat      
Hallo Leute,

ich möchte ein Balkendiagramm mit Fehlerbalken erstellen.
Jeweils 4 Balken sollen zu einem Winkel gehören. Die Fehlerbalken sollen zu jedem Balken gehören. Ich bekomme leider den Fahler, dass die Argumente von errorbar die gleiche Länge haben müssen. Wie kann ich das umgehen?

Vielen Dank für Eure Antworten!

Code:
%

Fr = [mean(F1), mean(F2), mean(F3), mean(F4); mean(F5), mean(F6), mean(F7), mean(F8)];

Fr_std = [std(F1), std(F2), std(F3), std(F4); std(F5), std(F6), std(F7), std(F8)];

x_axis_label = {'0°', '45°'};
x = [1:2];

hbar = bar(x, Fr);
set(gca, 'xticklabel',x_axis_label);

hold 'on';

er = errorbar(x, Fr, Fr_std, '.r');

 
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 06.06.2019, 22:23     Titel:
  Antworten mit Zitat      
Hallo,

warum wählst du denn x = 1:2 statt beispielsweise x = 1:8? Das wäre ein Vektor gleicher Länge wie die beiden anderen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
MechIng123
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 04.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.06.2019, 18:16     Titel:
  Antworten mit Zitat      
Hallo,

danke für deine Antwort!
Wenn ich x = [1:8] nehme funktioniert der Plot des Balekndiagramms an sich nicht mehr.
Ich habe auch schon ausprobiert bei den Fehlerbalken einen anderen Vektor z.B. y = [1:8] zu nehmen, aber da wird mir trotzdem der selbe Fehler ausgegeben.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.06.2019, 19:17     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
funktioniert der Plot des Balekndiagramms an sich nicht mehr.

Was bedeutet das? Gerade bei nicht reproduzierbaren Beispielen ist es sehr wichtig, das Problem genau zu beschreiben. Wenn ich zufällige Daten mit x = 1:8 laufen lasse, läuft das fehlerfrei durch.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
MechIng123
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 04.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.06.2019, 22:06     Titel:
  Antworten mit Zitat      
Hallo,

wenn ich x =[1:8] nehme erhalte ich folgenden Fehler: "XData must be the same size as YData". Ich vermute, dass durch die Folgende Zeile beim Plotten ein Vektor der Länge zwei erwartet wird.
Zitat:
x_axis_label = {'0°', '45°'};
Im Anhang habe ich auch den Plot ohne die Fehlerbalken angehängt (x = [1:2]).

Vielen Dank

untitled.jpg
 Beschreibung:

Download
 Dateiname:  untitled.jpg
 Dateigröße:  20.08 KB
 Heruntergeladen:  269 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.06.2019, 22:26     Titel:
  Antworten mit Zitat      
Hallo,

wenn ich keinen Fehler erhalte, du aber schon, dann liegt das vermutlich an unterschiedlichen Daten. Es wäre sehr hilfreich, wenn du Beispieldaten oder wenigstens deren Dimensionen postest.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
MechIng123
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 04.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.06.2019, 21:32     Titel:
  Antworten mit Zitat      
Hallo,

F1, F2, F3, usw. sind alle double Vektoren und haben unterschiedliche Dimensionen.
F1 ist 1529x1
F2 ist 770x1
F3 ist 390x1
F4 ist 239x1

Fr ist eine 2x4 Matrix mit den Mittelwerten von F1 bis F8, wobei F1 bis F4 die erste Zeile und F5 bis F8 die zweite Zeile bilden.

Fr_std ist genauso aufgebaut, bloß mit den Standardabweichungen der jeweiligen Vektoren.

Danke und Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.06.2019, 19:53     Titel:
  Antworten mit Zitat      
Hallo,

jetzt verstehe ich das Problem.
Eine direkte Lösung ist mir nicht bekannt. Ein Workaround:

Code:
Fr = rand(2,4);

Fr_std = Fr .*rand(2,4);

x_axis_label = {'0°', '45°'};
x = [1:4, 6:9]';

hbar = bar(x, reshape(Fr', [], 1));
hold 'on';

er = errorbar(x, reshape(Fr', [], 1), ...
    reshape(Fr_std', [], 1), '.r');
hold 'off';

xticks([2.5, 7.5])
xticklabels(x_axis_label);


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
MechIng123
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 04.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2019, 17:38     Titel:
  Antworten mit Zitat      
Hat geklappt.

Vielen Dank für deine Hilfe!
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 - 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.