Verfasst am: 26.02.2020, 11:57
Titel: Gemeinsame Legende für bar und plot
Hi Leute,
ich habe ein Programm geschrieben, bei dem zu jeder Stunde des Jahres Erlöse berechnet werden. Der abgebildete stündliche Erlös wird durch mehre Komponenten summiert. Diese sind mit bar (DBs, 'stacked') aufeinander gestellt. zusätzlich bildet eine durchgängige Linie den gesamten Erlös ab und wird über plot (DB) abgebildet. Über ein hold on kommt auch alles perfekt zusammen.
Wenn ich jedoch eine gemeinsame Legende schaffen möchte, erhalte ich nur die in der Abbildung. Dort sind noch 17 weitere unnötige Anzeigen drin.
Ich habe bar und plot und die dazu gehörigen Legenden jetzt schon mehrfach modifiziert, aber zur Wunschlösung (nur das anzuzeigen, was vorhanden ist) komme ich leider nicht.
Hat jemand von euch eine Idee?
Hier noch mein Code zum angehangenen Bild
Code:
figure();
x = 1:8760;
%Abbilden des aktuellen gesamten Deckungsbeitrags
p=plot(x,DBmom, 'r', "LineWidth",0.25);
% Abbilden der Anteile der einzelnen Komponenten am DB hold on;
DBs = [A B C D E];
b=bar(x,DBs, 'stacked');
set(b(1), 'FaceColor', 'y') set(b(2), 'FaceColor', 'c') set(b(3), 'FaceColor', 'k') set(b(4), 'FaceColor', 'm') set(b(5),'FaceColor', 'g') hold off;
legend({'Aktueller DB', 'A','B', 'C', 'D', 'E'}, 'Location', 'bestoutside');
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 ;)
danke für den Tipp. Den hatte ich schon mal irgendwo gefunden. Ich denke das ist der richtige Weg, jedoch zeigt es bei mir weiterhin die data-Kennlinien an.
Diese lassen sich nicht ausschließen und ich komme leider nicht darauf, wodurch die aufgerufen werden. Hast du da vielleicht einen Tipp?
ein reproduzierbares Beispiel (inkl. Daten, und wenn mit randn generiert) wäre hilfreich.
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 ;)
Einstellungen und Berechtigungen
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
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.