
Ich verwende matlab2tikz, um pgfplots .tex-Code zu generieren, um eine Abbildung mit pdflatex zu erstellen. Die Matlab-Funktion, die ich zum Erstellen der Abbildung verwende, erstellt jedes ihrer Häkchenbeschriftungen explizit, sodass sie mit dem folgenden Matlab-Code skaliert und gedreht werden können:
text(x(k),y(k),labs{k},'horizontalalignment',horizk,...
'verticalalignment',vertk, ...
'rotation',rotang(k), ...
'fontsize',gfontsize*scl(k), ...
'color',gcolor, ...
'tag','m_grid_xticklabel', ...
'fontname',gfontname);
Wenn ich den konvertierten .tex-Code untersuche, sehe ich Folgendes
\node[below, inner sep=0mm, rotate=359.994889043193, text=black]
at (axis cs:-8.79858922562881e-07, -4.84813663392814e-06,0) {$\text{ 81}^\text{o}\text{W }$};
stellt eine einzelne Teilstrichbeschriftung dar. Die Textzeichenfolge, die diese Zeile codiert, erscheint jedoch nicht in der resultierenden PDF-Datei, vermutlich weil die betreffenden Koordinaten außerhalb der Achsenbereiche liegen. Um dies zu testen, habe ich Koordinaten innerhalb des Bereichs eingesetzt, kompiliert und gesehen, dass die Beschriftung oder der Text dann sichtbar wurde.
Interessanterweise, wenn ich die Figur in Matlab mit dem View-Befehl erstelle, z. B.
view(45,45)
Ich kann die Textzeichenfolgen sehen, die die Achsenbeschriftungen darstellen, aber die Ausrichtung ist falsch. Insbesondere scheinen die Zeichenketten einen Y-Wert zu haben, der sie viel weiter oben in der Abbildung platziert, als ich erwartet habe. Ich denke, dass die X-Ausrichtung in Ordnung ist.
Die Lösungen, wie ich sie sehe, können entweder auf der Matlab-Seite oder auf der pgfplots/tikz-Seite liegen. Idealerweise würde eine Lösung aus einem kurzen Codestück bestehen, das in die Präambel oder beim Einrichten der Achsenbeschriftungen eingefügt wird. Dieser Code würde Text ermöglichen, der mit der Konstruktion erstellt wurde:
\node[<options>] at (axis cs:x,y,z) {<text>};
angezeigt werden, unabhängig davon, ob die Koordinaten x, y, z im Bereich liegen. Wenn Vorschläge nicht unbedingt leicht zustande kommen, kann ich ein MWE erstellen.
Antwort1
clip=false
Durch das Hinzufügen von axis
Umgebungsoptionen wird das Standardverhalten überschrieben, pgfplots
bei dem alles abgeschnitten wird, was außerhalb des Begrenzungsrahmens der Achse erscheint.
Abhängig vom anderen generierten Code kann dies andere Nebenwirkungen haben, in den meisten Fällen ist es jedoch in Ordnung.
Diese Schlüsseleinstellung kann dem generierten Code mithilfe der Funktion matlab2tikz
von hinzugefügt werden. Fügen Sie EXTRAAXISOPTIONS
vor dem Aufruf von hinzumatlab2tex
EXTRAAXISOPTIONS = {'clip=false'};
um diese Option zum generierten Code hinzuzufügen.