Verwenden Sie griechische Symbole in Balkendiagrammbeschriftungen in MATLAB

Ammar Ali 15 Februar 2024
Verwenden Sie griechische Symbole in Balkendiagrammbeschriftungen in MATLAB

In diesem Tutorial wird das Hinzufügen griechischer Symbole zu einem Diagramm mit der Funktion text() in MATLAB erläutert.

Verwenden Sie griechische Symbole in Balkendiagrammbeschriftungen in MATLAB

Wir können dem Diagramm in Matlab problemlos Zahlen und Zeichen hinzufügen, die auf der Tastatur vorhanden sind, aber die griechischen Symbole sind auf der Tastatur eines Computers nicht verfügbar. Wir brauchen einen interpreter, um den griechischen Symbolnamen in das entsprechende Symbol umzuwandeln, um griechische Symbole hinzuzufügen.

Wir können die text()-Funktion von Matlab verwenden, die standardmäßig denselben Text-interpreter hat wie die andere Plotfunktion in Matlab, nämlich tex, aber wir können ihren interpreter in latex ändern wandelt den Namen eines griechischen Symbols in die entsprechende Symbolform um. Die Funktion text() fügt Text auf einem Diagramm an den angegebenen Koordinaten ein.

Gemäß den aktuellen Achsen werden die in der Funktion text() übergebenen Koordinaten vom Plot verwendet. Die ersten beiden Argumente der Funktion text() enthalten die Koordinaten der x- und y-Achse, und das dritte Argument enthält den Text, den wir in den Plot einfügen möchten.

Um griechische Symbole in ein Diagramm einzufügen, müssen wir die Eigenschaft interpreter der Funktion text() verwenden und sie auf latex setzen, wodurch der Name des griechischen Symbols in seine Symboldarstellung umgewandelt wird. Wir müssen den Namen des griechischen Symbols in doppelte Dollarzeichen einfügen, und wir müssen auch einen umgekehrten Schrägstrich vor den Namen des griechischen Symbols einfügen, z. B. $$\sigma$$ für das griechische Symbol Sigma.

Lassen Sie uns zum Beispiel ein Balkendiagramm erstellen und das griechische Symbol Sigma mit der Funktion text() einfügen. Siehe Code unten.

Beispielcode:

clc
clear

y = [100, 150];
bar(y);
text(1.1,-5,'$$\sigma$$','interpreter', 'latex')

Ausgang:

Griechisches Symbol auf dem Grundstück

Wie wir in der Ausgabe sehen können, befindet sich auf der x-Achse neben der Zahl 1 ein Sigma-Symbol. Wir können auch die Eigenschaften des Textes wie Farbe und Schriftgröße ändern.

Um die Farbe des Textes zu ändern, können wir die Eigenschaft Color verwenden und die Farbe mit dem ersten Buchstaben des Farbnamens, dem RGB-Triplettwert oder dem Hexadezimalcode festlegen. Wir können die Eigenschaft FontSize verwenden, um die Schriftgröße des Textes festzulegen und die Größe mit einem numerischen Wert festzulegen.

Lassen Sie uns zum Beispiel die Schriftgröße und Farbe des obigen Sigma-Symbols ändern. Siehe Code unten.

Beispielcode:

clc
clear

y = [100, 150];
bar(y);
text(1.1,-5,'$$\sigma$$','interpreter', 'latex','FontSize',25,'Color','r')

Ausgang:

Ändern Sie die Eigenschaften des griechischen Symbols

Wie wir in der obigen Ausgabe sehen können, werden die Farbe und die Schriftgröße des Sigma-Symbols im Diagramm geändert. Wir können auch die ursprünglichen Tick-Symbole oder Beschriftungen der x- oder y-Achse ersetzen, die auf dem Diagramm vorhanden sind.

Zuerst müssen wir die Tick-Symbole mithilfe eines leeren Arrays und der Funktion set(), mit der die Eigenschaften eines grafischen Objekts wie Plots eingestellt werden, auf none setzen. Danach müssen wir die neuen Symbole mit der Funktion text() an die Stelle der vorherigen Symbole setzen.

Wir können die Funktion get() verwenden, um die Koordinaten oder Position der vorherigen Tick-Labels zu erhalten und die neuen Labels oder Symbole auf dem Diagramm zu platzieren.

Lassen Sie uns zum Beispiel ein Balkendiagramm erstellen und die Teilstrichbeschriftungen der x-Achse durch das Symbol Torte ersetzen. Siehe Code unten.

Beispielcode:

clc
clear

y = [51,93,101];
bar(y, 'BarWidth', 0.4);
label = {'$$\hat{\pi}_1$$', '$$\hat{\pi}_2$$', '$$\hat{\pi}_3$$'};
set(gca,'xticklabel',[])

xTicksLoc = get(gca,'xtick');

axe = axis;
for i = 1:length(xTicksLoc)
     text(xTicksLoc(i)+0.1, axe(2)-10, label{i},...
         'HorizontalAlignment','Right','interpreter', 'latex','FontSize',22);
end

Ausgang:

Ersetzen Sie das Tick-Label durch das griechische Symbol

Im obigen Code haben wir die Position der Tick-Labels der x-Achse gespeichert und sie innerhalb der Funktion text() verwendet, um die Diagrammsymbole zu ersetzen. Wir haben eine for-Schleife verwendet, um alle Labels mit dem Symbol pi zu setzen.

Innerhalb der for-Schleife haben wir die gespeicherte Position der vorherigen Labels und einen Offset 0.1 verwendet, mit dem wir die horizontale Position gemäß dem gegebenen Diagramm festlegen können. Wir haben den Befehl axes(2) verwendet, um die Position der y-Achse zu erhalten, und einen Versatz hinzugefügt, sodass die Symbole unterhalb der Linie der y-Achse liegen.

Die Offset-Werte sind abhängig vom gegebenen Plot. Wir können auch die Beschriftungen der y-Achse auf die gleiche Weise ändern, wie wir die Beschriftungen der x-Achse geändert haben.

Im Fall von y-Achsen-Beschriftungen müssen wir die Tick-Beschriftungen der y-Achse auf none setzen, die Position der Tick-Beschriftungen der y-Achse ermitteln und die Position im zweiten Argument der Funktion text() verwenden. was den Tick-Positionen auf der y-Achse entspricht. Wir können fast alle griechischen Symbole auf einem Plot platzieren, und wir können auch viele andere Eigenschaften des Textes oder der griechischen Symbole mit der Funktion text() ändern.

Überprüfen Sie diesen Link für weitere Details über die Eigenschaften der Funktion text() und die griechischen Symbole, die wir in Diagramme einfügen können.

Wenn wir nicht alle Tick-Beschriftungen ändern und nur eine Beschriftung für die gesamte x- oder y-Achse setzen möchten, können wir die Funktionen xlabel() und ylabel() verwenden. Und um ein griechisches Symbol zu setzen, müssen wir den interpreter auf latex setzen, wie wir es im Fall der text()-Funktion getan haben.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Verwandter Artikel - MATLAB Plot