2016-05-19 13 views
0

Ich bin nicht sicher, dass meine Frage adressiert werden kann, aber ich versuche, als ein Zeichen zu einem ggplot mit einem grid.arrange einzufügen. Ich bin mitEinfügen von Sonderzeichen mit grid.arrange

grid.arrange(pm, bottom = textGrob("'★' P < 0.001, ' ' P > 0.001", rot = 0, hjust = -0.3, vjust = -0.5)) 

Ich habe auch versucht

grid.arrange(pm, bottom = textGrob(as.character("'★' P < 0.001, ' ' P > 0.001"), rot = 0, hjust = -0.3, vjust = -0.5)) 

Neben der Zusammenarbeit mit paste Befehl, aber es hat nicht funktioniert. Stattdessen gibt leeres Quadrat zurück. Danke für jeden Vorschlag.

+0

Verwenden Sie vielleicht '\ u2605' für den Stern. http://www.fileformat.info/info/unicode/char/2605/index.htm –

+0

Die Frage wäre besser, wenn das Beispiel reproduzierbar wäre und wenn Sie die Fehlermeldung enthalten, die Sie erhalten. Bitte bearbeiten Sie es, um Ihr Problem klarer zu erklären. –

Antwort

0

Versuchen Sie, den Unicode-Wert für den schwarzen Stern zu verwenden.

grid.newpage(); grid.text("\u2605") 

Es kann sein, dass die Schriftart Verwendung für den Text verwendet keinen schwarzen Stern Charakter. Versuchen Sie, ein anderes Zeichen zu drucken (zumindest um zu sehen, ob etwas gezeichnet wird):

Dann versuchen Sie, die Schriftart zu ändern. Unter Windows verwenden:

windowsFonts(PlotFont = "Arial Unicode MS") 
grid.newpage(); grid.text("\u2605", gp = gpar(fontfamily = "PlotFont")) 

Unter Unix-basierten Betriebssystemen, tauschen windowsFonts für X11Fonts oder quartzFonts und eine Schriftart auswählen, die auf Ihrem Computer installiert ist.

+0

Danke für den Vorschlag, aber es gibt auch leeres Quadrat zurück. – HoHoHo

+0

@HoHoHo Wild raten, aber ich habe diesen Fehler vorher gemacht. Planen Sie tatsächlich zu archivieren, dachten aber, Sie würden auf dem Bildschirm planen? Sehen Sie sich 'dev.cur()' und 'dev.list()' an. –

+0

Oder mit leeren Platz meinen Sie einen Ersatz für ein fehlendes Zeichen? (Statt "mein Plot ist nur ein leeres Quadrat mit nichts zeigt".) In diesem Fall hat die Schriftart, die Sie gerade verwenden, möglicherweise keinen Stern. Versuche, verschiedene Charaktere zu drucken und zu sehen, ob das funktioniert. –