Ändere die ylab-Position in R Scatterplot3D

8

Ich arbeite mit R Scatterplot3D und ich brauche Ausdruck () in Beschriftungen, weil ich einige griechische Buchstaben verwenden muss; Meine Frage ist: Gibt es eine Möglichkeit, den y.lab-Namen nach unten zu ziehen oder entlang der Achse zu schreiben (in einer diagonalen Position)? Ich ging zur Hilfe und packte die Beschreibung, aber nichts scheint zu funktionieren; Danke im Voraus für jede Hilfe Maria

%Vor%     
Maria D 17.12.2013, 15:01
quelle

2 Antworten

5

Sie können keine der klassischen Methoden verwenden, da die Funktion scatterplot3d() das Diagramm konstruiert. Es ist im Grunde genommen über einem klassischen Plotfenster aufgetragen, was bedeutet, dass die Achsenbeschriftungen an die klassischen Positionen gebunden sind. Das Z-Label wird auf der echten linken Y-Achse gedruckt, und das Y-Label wird auf der echten rechten Y-Achse gedruckt.

Sie können text() verwenden, um dies zu umgehen:

  • benutze par("usr") , um die Grenzen der X- und Y-Koordinaten zu erhalten
  • Berechnen Sie die Position, an der Sie die Beschriftung anbringen möchten (z. B. 90% der horizontalen Position und 8% der vertikalen Position).
  • benutze text() , um es zu platzieren (und möglicherweise den Parameter srt , um das Label umzudrehen)

Dies macht es ein wenig generischer, so dass Sie nicht für jedes neue Plot, das Sie erstellen, andere Werte ausprobieren müssen.

Beispiel:

%Vor%

Gibt

    
Joris Meys 17.12.2013, 16:43
quelle
3
%Vor%

Man muss ziemlich extreme Parameterwerte verwenden, um den Ausdruck an der richtigen Stelle in dieser transformierten räumlichen Projektion zu erhalten.

    
42- 17.12.2013 16:43
quelle

Tags und Links