Hallo,
ich bin es nochmal. Konnte mein Problem mit fnplt lösen, allerdings hänge ich jetzt bei der Lengende. Kurz zu dem was ich mache und woran ich scheitere:
ich plotte mehrere Messungen in eine Figure, jeweils die Messdaten mit einem Plot Befehl und einen Spline mittels fnplt. Damit nicht jeweils zwei Einträge zu jeder Messung erscheinen, erstelle ich für jeden fnplt ein handle und schreibe dieser in einen vector. Am Ende lasse ich dann in der Legende nur die Einträge aus dem Vector anzeigen. Funktioniert auch wunderbar. Habe allerdings ein Problem mit der Beschriftung. Diese soll variabel sein, der string wird in der Loop aus den Messdaten bzw Funktionsparametern ermittelt.
Wie kann ich jetzt die einzelnen Strings so übermitteln, dass er mir die Legende richtig anzeigt?
Hier mal mein Code:
Code:
for k = 1:L
% Erzeugung des Strings
formatSpec = 'B_1 = %g muT';
str = sprintf(formatSpec,B1vec(k));
% smoothing spline
y2 = Ya2(:,i,k);
spline1 = spaps(x2,y2,5e-07);
% spline plotten fnplt(spline1,'-',2);
% handle für fnplt erzeugen und Eigenschaften ändern
h = findall(gca,'Type','line','-and','DisplayName','');
set(h,'Color',cc(k,:),'DisplayName', str) % handle-vector erzeugen (FUNKTIONIERT !)
hvec(k) = h;
% Cell-Array mit Namen erzeugen (funktioniert auch)
hname{k} = {str};
% Messdaten plotten plot(x,Ya(:,i,k),'color',cc(k,,'Marker','o','LineStyle','none','DisplayName',str) end legend(hvec,{'test','test','test','test','test','test'})
Der hvec funktioniert wie gesagt, allerdings scheiter ich gerade daran die Namen in die richtige Form zu bringen. In der Schleife schreib ich die Namen in ein cell array, aber damit kann legend() halt nix anfangen. Es muss doch eine schöne, einfache und schnelle Lösung geben die Daten in die benötigte Form zu konvertieren, oder ?!
Achja, die Länge von hvec und die Namen sollen natürlich variabel bleiben!
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.