Verfasst am: 12.03.2019, 14:26
Titel: 3 Y-Achsen in einem Diagramm
Hallo liebe Matlab Gemeinde
kurz vorab mein Hintergrund:
Ich bin Student, habe Messwerte im Zugversuch ermittelt und darf nun ein Diagramm erstellen, für das mir eine entsprechende Figure Datei gegeben wurde. Diese optimiere ich etwas, um sie auf meine Bedürfnisse anzupassen.
Vorab sei aber gesagt, dass ich ein ziemlicher Matlab noob bin und sich meine Kenntnisse wirklich nur auf die Basics beschränken. Sorry dafür
Mein Problem:
Ich habe 2 Matrizen mit Messwerten und eine Figure Datei. Aus den Matrizen möchte ich 3 Kurven in einem Diagramm abbilden, wobei sich jede Kurve auf eine andere Y-Achse bezieht. X bleibt für alle gleich (die Zeit t). Die Y-Achsen müssen außerdem einzeln skaliert werden können, damit am Ende alle Kurven zu sehen sind. Ich hoffe die angehängten Dateien verdeutlichen mein Problem.
Lösung meines Problems:
Ja ich habe bereits nach Lösungen gegoogelt und auch schon sämtliche Ansätze vom Matlab File Exchange ausprobiert. Die angebotenen Lösungen haben nie geklappt, weil irgendwelche Fehlermeldungen aufgetaucht sind. Einfache Fehler kann ich beheben, aber bei irgendwelchen abgespaceten Codes steige ich aus.
Was mir helfen würde wäre eine kleine Anleitung, die mir sagt wo ich welchen Code einfügen muss. Ich habe das Gefühl so schwer kann es eigentlich nicht sein.
Ich wäre euch wirklich sehr dankbar für euer Schwarmwissen und bitte um Verzeihung für mein Matlab- und Programmierunvermögen
es gibt da ja einige Funktionen, die von der Community sehr gut bewertet sind. Wenn es da Fehlermeldungen gibt, ist eine falsche Anwendung der Funktion naheliegend. Deswegen bitte genau angeben:
1. welche Funktion verwendest du
2. wie verwendest du sie? (möglichst ein reproduzierbares Beispiel)
3. welche Fehlermeldung bekommst du?
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 ;)
3.
Bei dem Beispiel erschien dann die Fehlermeldung:
Out of memory. The likely cause is an infinite recursion within the program.
Error in plotyyy (line 20)
[ax,hlines] = plotyyy(x,y1,x,y2,x,y3,ylabels);
Damit konnte ich nicht viel anfangen und war raus...
2.
Ich habe in meiner vorhandenen figure Datei rechtsgeklickt und mir den Code anzeigen lassen, welcher der nachfolgende ist. Ich weiß nur leider nicht wie und wo ich da plotyyy einbinden kann.
Code:
function createfigure(PK01_Q1, PK01_Q2, PK01_Z1, YMatrix1) % CREATEFIGURE(PK01_Q1, PK01_Q2, PK01_Z1, YMatrix1) % PK01_Q1: vector of x data % PK01_Q2: vector of y data % PK01_Z1: vector of x data % YMATRIX1: matrix of y data
% Auto-generated by MATLAB on 13-Mar-2019 18:27:54
% Uncomment the following line to preserve the Y-limits of the axes % ylim(axes1,[0 0.2]); % Uncomment the following line to preserve the Z-limits of the axes % zlim(axes1,[-1 1]); box(axes1,'on');
% Set the remaining axes properties set(axes1,'FontAngle','italic','FontName','Times New Roman','FontSize',14,...
'XGrid','on','XMinorTick','on','YGrid','on');
% Create legend
legend1 = legend(axes1,'show');
set(legend1,...
'Position',[0.7182291666666690.1350710900473920.1749999999999990.212834170414777],...
'FontSize',12.6,...
'EdgeColor',[0.150.150.15]);
Out of memory. The likely cause is an infinite recursion within the program.
Die Fehlermeldung sieht so aus, als ob du den Funktionsaufruf in die Funktion geschrieben hättest. Das ist nicht sinnvoll. Der Funktionsaufruf muss vom Command Window oder einem separaten Skript erfolgen.
Zitat:
Ich weiß nur leider nicht wie und wo ich da plotyyy einbinden kann.
plotyyy da einzubinden ist nicht sinnvoll. Stattdessen sollte plotyyy aufgerufen werden, wie z.B. in dem Beispiel im Kommentar.
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.