|
|
Fläche zwischen zwei geplotteten Vektoren einfärben |
|
glockenspiel |
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2020, 08:38
Titel: Fläche zwischen zwei geplotteten Vektoren einfärben
|
|
Hallo zusammen,
ich kenne den Patch Befehl zum Einfärben aber wie kann ich die Fläche zwischen zwei geplotteten Vektoren einfärben?
Gibt es außerdem ein fertiges Kommando um eine Winkelhalbierende zwischen Ordinate und Abszisse darzustellen? Ich habe das Probleme über eine For-Schleife gelöst die von 1 bis N jedem Wert einen passenden zuordnet. Aber vielleicht gehts ja eleganter....
Vielen Dank!
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 18.06.2020, 09:51
Titel:
|
|
Hallo,
Zitat: |
ich kenne den Patch Befehl zum Einfärben aber wie kann ich die Fläche zwischen zwei geplotteten Vektoren einfärben? |
area und als Farbe für die untere Fläche weiß verwenden.
Zitat: |
Ich habe das Probleme über eine For-Schleife gelöst die von 1 bis N jedem Wert einen passenden zuordnet. |
Bitte poste den Code statt ihn zu umschreiben. Die for-Schleife ist ziemlich sicher unnötig. Was du stattdessen verwenden kannst, kann ich dir aber nur sagen, wenn ich die for-Schleife auch sehe.
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 ;)
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2020, 16:21
Titel:
|
|
f=ones (N1,);
for (r=1:N)
R(r)=(sum(f(1:r)))/(N*V) %Winkelhalbierende
end
übrigens:
Ich habe einen Graphen dessen höchster y-Wert 1 ist. Trotzdem bekomme ich ein Plotfenster mit einer y-Achse bis 1,2. Wie kann ich das (nachträglich) skalieren?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 18.06.2020, 16:29
Titel:
|
|
Hallo,
idealerweise bitte dazu schreiben, was N und V sind. Vermutung:
Zitat: |
Wie kann ich das (nachträglich) skalieren? |
Mit
ylim
.
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 ;)
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2020, 17:01
Titel:
|
|
Harald hat Folgendes geschrieben: |
:
Mit
ylim
.
Grüße,
Harald |
h1=area(R,0)
h2=area(q,0)
h2.FaceColor = [0 1 0];
h1.FaceColor = [1 0 0];
hold on
plot(q)
ylim([0 1]);
hold on
plot(R)
ylim([0 1]);
Leider bekomme ich da immernoch ne y Skala bis 1,2 und neuerdings macht Matlab richtig Terror mit den Farbcodes. Bis eben hat alles geklappt. Ich habe NICHTS am Code verändert bekomme aber durchgehend Fehlermeldungen
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.06.2020, 08:26
Titel:
|
|
Mittlerweile klappt es vielen Dank schon mal Harald!
Ich habe auch mal versucht eine schönere lineare Funktion zu plotten
a=0.005
f = @(x) a*x;
ezplot( f, 0, 200 )
wird auch alles ordentlich geplottet aber ich kann die Fläche zwischen der linearen Funktion und einem Vektor nicht einfärben wegen der Definition des area Befehls. Gibts ne Möglichkeit das zu umgehen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 19.06.2020, 09:21
Titel:
|
|
|
|
|
Hallo,
Zitat: |
Mittlerweile klappt es |
Das ist schön. Poste dann bitte auch, was die Lösung deines Problems war. Dann haben auch andere was davon, die später auf diesen Thread stoßen.
Zitat: |
neuerdings macht Matlab richtig Terror mit den Farbcodes |
Ich vermute, das heißt du bekommst Fehlermeldungen? Genau genommen wahrscheinlich eine Fehlermeldung und den stack (= Kette, wie sie zustande kommt).
Wenn du beim Beheben einer Fehlermeldung Unterstützung brauchst, ist der erste Schritt, uns die Fehlermeldung mitzuteilen, idealerweise zusammen mit einem reproduzierbaren Beispiel.
Zitat: |
Ich habe NICHTS am Code verändert bekomme aber durchgehend Fehlermeldungen |
Das ist sehr ungewöhnlich. An sich gibt es da nur folgende Möglichkeiten, nach Häufigkeit:
1. oh... aber ich habe doch nur...
2. Überbleibsel von vorheriger Code-Ausführung machen Probleme
3. der Code arbeitet mit Zufallszahlen
4. auf dem Computer gab es, möglicherweise im Hintergrund, ein Update - z.B. des Graphiktreibers.
Zitat: |
ich kann die Fläche zwischen der linearen Funktion und einem Vektor nicht einfärben wegen der Definition des area Befehls. |
Das passt auch nicht zusammen. Warum verwendest du denn jetzt ezplot (was übrigens laut Doku nicht empfohlen ist)?
Warum nicht so:
Wenn es weitere Probleme gibt, poste bitte den kompletten aktuellen Stand.
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 ;)
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.06.2020, 14:41
Titel:
|
|
|
|
|
Harald hat Folgendes geschrieben: |
Hallo,
Zitat: |
Mittlerweile klappt es |
Das ist schön. Poste dann bitte auch, was die Lösung deines Problems war. Dann haben auch andere was davon, die später auf diesen Thread stoßen.
Zitat: |
neuerdings macht Matlab richtig Terror mit den Farbcodes |
Ich vermute, das heißt du bekommst Fehlermeldungen? Genau genommen wahrscheinlich eine Fehlermeldung und den stack (= Kette, wie sie zustande kommt).
Wenn du beim Beheben einer Fehlermeldung Unterstützung brauchst, ist der erste Schritt, uns die Fehlermeldung mitzuteilen, idealerweise zusammen mit einem reproduzierbaren Beispiel.
Zitat: |
Ich habe NICHTS am Code verändert bekomme aber durchgehend Fehlermeldungen |
Das ist sehr ungewöhnlich. An sich gibt es da nur folgende Möglichkeiten, nach Häufigkeit:
1. oh... aber ich habe doch nur...
2. Überbleibsel von vorheriger Code-Ausführung machen Probleme
3. der Code arbeitet mit Zufallszahlen
4. auf dem Computer gab es, möglicherweise im Hintergrund, ein Update - z.B. des Graphiktreibers.
Zitat: |
ich kann die Fläche zwischen der linearen Funktion und einem Vektor nicht einfärben wegen der Definition des area Befehls. |
Das passt auch nicht zusammen. Warum verwendest du denn jetzt ezplot (was übrigens laut Doku nicht empfohlen ist)?
Warum nicht so:
Wenn es weitere Probleme gibt, poste bitte den kompletten aktuellen Stand.
Grüße,
Harald |
Ok in Zukunft werde ich immer den kompletten Code und auch meine Lösung posten.
Ganz ehrlich: Ich weiß nicht wie ich das Problem gelöst habe. Habe die Problemzeilen gelöscht und neu aufgeschrieben. Vielleicht waren da tatsächlich Code Überbleibsel oder es war doch Möglichkeit 1.
Aktuell läuft ne Simulation und danach werde ich deinen Vorschlag austesten!
Noch ne andere Frage: Gibt es nicht noch eine Matrix die Zahlenwerte Farben zuordnet sodass ich bei einer Matrix mit Vektoren, deren Einträge zwischen 0&1 liegen ich die Unterschiede der Einträge durch Farbkontraste darstellen kann?
Vielen Dank dir übrigens für die ganze Hilfe!
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 19.06.2020, 18:05
Titel:
|
|
Hallo,
Zitat: |
Gibt es nicht noch eine Matrix die Zahlenwerte Farben zuordnet sodass ich bei einer Matrix mit Vektoren, deren Einträge zwischen 0&1 liegen ich die Unterschiede der Einträge durch Farbkontraste darstellen kann? |
Das klingt nach surf, mesh, contour etc. in Verbindung mit colorbar
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 ;)
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.06.2020, 19:06
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
Zitat: |
Gibt es nicht noch eine Matrix die Zahlenwerte Farben zuordnet sodass ich bei einer Matrix mit Vektoren, deren Einträge zwischen 0&1 liegen ich die Unterschiede der Einträge durch Farbkontraste darstellen kann? |
Das klingt nach surf, mesh, contour etc. in Verbindung mit colorbar
Grüße,
Harald |
Aber das sind doch alles Befehle für Gebiete und nicht Matrizen oder?
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.06.2020, 19:20
Titel:
|
|
ich habe es jetzt über
imagesc
hinbekommen.
Allerdings habe ich folgendes Problem: Ich habe 100 Einträge eines Vektors die sich über N Durchgänge ändern. Ich möchte nach jedem Durchgang den aktuellen Vektor abspeichern.
Das Problem ist nur dass die Einträge nach jedem Durchgang zufällig durchgemischt werden. Wie kann ich dennoch z.B. den Verlauf des zweiten Eintrages zu Beginn tracken? Und zwar so dass es egal ist ob er an Stelle 3, 18 oder 45 ist?
|
|
|
glockenspiel |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 03.06.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.06.2020, 19:24
Titel:
|
|
glockenspiel hat Folgendes geschrieben: |
ich habe es jetzt über
imagesc
hinbekommen.
Allerdings habe ich folgendes Problem: Ich habe 100 Einträge eines Vektors die sich über N Durchgänge ändern. Ich möchte nach jedem Durchgang den aktuellen Vektor abspeichern.
Das Problem ist nur dass die Einträge nach jedem Durchgang zufällig durchgemischt werden. Wie kann ich dennoch z.B. den Verlauf des zweiten Eintrages zu Beginn tracken? Und zwar so dass es egal ist ob er an Stelle 3, 18 oder 45 ist? |
edit: der Sort Befehl hat Abhilfe geschafffen
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| 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.
|
|