Verfasst am: 21.03.2013, 17:50
Titel: Fragen zu fnplt in loop
Hallo,
ich versuche nun schon seit einiger Zeit ein "kleines" Problem in meiner Auswerteroutine zu beheben, verzweifel aber so langsam daran... hier mein Problem:
Ich möchte in einem Plot sowohl meine Messdaten als auch den passenden Spline plotten lassen. Das ganze in einem Loop für k Messungen. Der Code sieht in etwa so aus:
Code:
for k = 1:L
% legend text
formatSpec = 'B_1 = %g muT';
str = sprintf(formatSpec,B1vec(k));
Er plottet mir auch genau das was ich haben will, allerdings kann ich zwei Dinge nicht ändern:
1) ich würde gerne für fnplt die gleichen Farben wie für die normale plot-Funktion benutzen, allerdings kann ich an fnplt keine weiteren Parameter wie 'color' etc übergeben. Im figure window kann ich die Farben nachträglich ändern, bin mit dieser Lösung aber absolut nicht zufrieden.
2) Ich würde gerne in der Legende jeweils nur einen Eintrag pro Messung haben, sprich fnplt soll nicht in der Legende erscheinen. Auch hier habe ich schon von "Lösungen" gelesen, allerdings funktionieren diese in meiner Schleife nicht bzw ich war nicht in der Lage diese umzusetzen. (z.B. legend ([h1 h2 h3...], 'name1', 'name2' ...])
Bin für jede Hilfe dankbar!
koxx
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 25.03.2013, 16:42
Titel:
Hat niemand eine Idee?
Gibt es evtl eine Möglichkeit das ganze mit nur einer Funktion zu plotten? Bei der normalen Plot-Funktion verbindet er die Messwerte ja auch, quasi plottet er einen cubic-spline, oder?! Funktioniert das nicht auch irgendwie mit nem smoothing spline?
Damit hätte sich das Problem mit der Legende sofort gelöst.
Und wenn es sich bei der Funktion nicht um fnplot handelt, müsste ich auch die Farbe wieder ändern können?!
Wäre nett, wenn mir jemand helfen könnte!
koxx
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 27.03.2013, 15:24
Titel:
Habe eine Lösung gefunden, zumindest für das Problem mit der Farbe/Beschriftung... mittels findall() bekomm ich auch für die fnplt-plots ein handle und kann damit arbeiten... hier der code:
Code:
fnplt(spline1,'-',2);
h = findall(gca,'Type','line');
set(h,'Color','r','DisplayName', 'test123')
Allerdings will die Legende immer noch nicht so wie ich möchte ... habe das Problem hier: http://www.gomatlab.de/flexible-legende-t28097.html nochmal etwas genauer geschildert und bin natürlich für jede Hilfe dankbar!
rts82
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 19.06.2013, 10:52
Titel: Danke sehr!
Vielen Dank dass du die Lösung noch gepostet hast. Ich habe es auch mit findall versucht, aber war mir nicht sicher welchen type ein fnplt-spline hat.
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.