Dieser Artikel ist nützlich für diejenigen, die Grafiken in der Matlab-Umgebung erstellen.
Bei der Erstellung von Diagrammen für die Veröffentlichung von Artikeln in wissenschaftlichen Fachzeitschriften und verschiedenen Arten von Berichten bin ich häufig auf die Notwendigkeit gestoßen, mehrere Kurven zu erstellen, die sich jeweils auf ihre Achse beziehen, um den Artikel nicht mit Diagrammen zu überladen und seine Grenzen nicht zu überschreiten. Dafür gab es in Matlab vor der Version R2014a nur das
Plotyy- Team
(X1, Y1, X2, Y2) , das eine Reihe unangenehmer Funktionen aufweist, weshalb andere Programme verwendet und alles manuell ausgeführt werden musste, was zum einen diesen Vorgang erschwert Aus der Sicht eines einzelnen Stils erfordert dies zweitens viel Zeit und drittens keine sofortigen Änderungen.
Unangenehme Eigenschaften und BeschreibungDiesen unangenehmen Merkmalen würde ich zuschreiben:
1. Fehlen eines analogen
Hold- Ons ("natives"
Hold-On funktioniert mit Plotyy nicht richtig). Um mehr als 2 Kurven hinzuzufügen, müssen Sie diese Konstruktion verwenden:
[hAx,hLine1,hLine2] = plotyy([x1',x2'],[y1' y2'],[x3',x4'],[y3',y4']);
Ein unangenehmes Merkmal Nr. 2 ergibt sich aus diesem Entwurf:
2. Die Abmessungen der in eckigen Klammern eingeschlossenen Arrays müssen übereinstimmen, weil Daraus werden Matrix von Elementen gebildet. In der Praxis kommt dies sehr selten vor.
3. Design leidet ernsthaft unter der Tatsache, dass Sie die Farben und Typen aller Linien in einer Zeile nicht programmgesteuert ändern können, sondern nur eine Reihe von Linien formatieren können, die sich auf eine bestimmte Achse beziehen (hLine1 und hLine2) - auf jeden Fall konnte ich nicht. Gleichzeitig spreche ich nicht davon, Parameter von Hand zu ändern, d. H. Bearbeiten im Fenster "Abbildung" - nur direkt mit dem Code in der .m-Datei.
Zusammenfassend: plotyy () eignet sich nicht sehr gut zum Anzeigen mehrerer Diagrammsätze für verschiedene Achsen. Es sei denn für einfache Abhängigkeiten wie diese:
x = linspace(0,10); y1 = 200*exp(-0.05*x).*sin(x); y2 = 0.8*exp(-0.5*x).*cos(10*x); y3 = 0.2*exp(-0.5*x).*cos(10*x); y4 = 150*exp(-0.05*x).*sin(x); X=[x',x']; Y1=[y1' y4']; Y2=[y2',y3']; [hAx,hLine1,hLine2] = plotyy(X,Y1,X,Y2);

Entweder das
Yyaxes- Team, das in der Matlab R2014a-Version erschien. Hier haben wir jetzt wo wir uns umdrehen können.
Ich möchte Ihnen anhand meines Beispiels von den Freuden dieses Teams erzählen. Die Aufgabe besteht darin, dass ich auf einem Diagramm 3 Temperaturprofile (Lösungen, die durch die direkte numerische Methode, die Momentenmethode und experimentelle Werte erhalten wurden) in Bezug auf die rechte Achse und 3 Druckprofile in Bezug auf die linke Achse aufbauen muss. Fügen Sie außerdem Pfeile und Beschriftungen hinzu.
Mit den
Befehlen yyaxis left und
yyaxis right können Sie diese Aufgabe gleichzeitig
ausführen . Was ist in der Tat die Essenz. Innerhalb einer Abbildung können wir beliebig viele Diagramme erstellen, indem wir sie mit einer der Achsen verknüpfen. Im Rahmen jedes Teams funktioniert alles wie bei regulären Zeitplänen.
Die Struktur des Bildes sieht in diesem Fall folgendermaßen aus:
figure() { - , } yyaxis left { , - , , , } yyaxis right { , - , , , }
Wenn wir diese Struktur mit dem Notwendigen füllen, erhalten wir als Ergebnis:

Eine weitere zusätzliche Funktion bei der Vorbereitung von Diagrammen für den Druck ist das einfache und bequeme Speichern in jedem von Matlab unterstützten Format. Dazu müssen Sie nur die folgenden Zeilen hinzufügen:
ZusammenfassungAb Version R2014a ist Matlab ein geeignetes Programm zur Erstellung von Zeitplänen für die Veröffentlichung von Artikeln in verschiedenen wissenschaftlichen Fachzeitschriften. Ein wichtiges Plus ist die sehr gute Flexibilität dieses Tools, mit der Sie die Ergebnisse verarbeiten und in einer verdaulichen und schönen Form präsentieren können, auch für die sogenannten. "Stapel" -Verarbeitung.
Ein Blick lohnt sich:→ Ein
nützlicher Artikel zu Diagrammen in Matlab→
Beschreibung der Yyaxis
→
Beschreibung der Handlung→
Diagramme exportieren