Ich möchte Unicode-Zeichen in meinem Plot, als Teil einer gemischten Zeichenfolge, zum Beispiel ρ=0.84
, wo die 0,84 in einer Variablen gespeichert wird, sagen wir cor.value
.ggplot Unicode-Zeichen ohne Kairo?
Dies schließt praktisch Lösungen wie expression
oder bquote
(vorgeschlagen here) aus. Ich weiß nicht, ob sie alleine arbeiten würden, aber es ist ein Problem, sie mit dem Wert einer Variablen über paste
zu kombinieren. Die einzige Möglichkeit, es zum Laufen zu bringen, bestand darin, das Unicode-Symbol in meiner Quelle zu verwenden. Es erschien sogar auf der Handlung in R Studio.
Aber als ich versuchte zu drucken, bekam ich nur ..
statt. Der einzige Vorschlag, den ich bisher gefunden habe, ist use Cairo, aber Cairo ist der Rest meines Grundstücks, so dass ich mit dem Original-PDF-Gerät bleiben will.
Gibt es eine Chance, mit Hilfe von Unicode oder etwas anderem, diese Zeichenfolge innerhalb der Handlung gedruckt, aber nicht Kairo zu verwenden? Hier
ist ein Beispiel dafür, was Kairo tut (das soll eine Ecke des Diagramms sein, mit einem grauen Rand):
Der Teil Punkt abgeschnitten wird, nicht abgeschnitten. Wenn es mit dem Rand überlagert wird, ist der Rand leicht versetzt, und die Punkte "zeigen" durch den Rand (hier sehen Sie ihn nur auf der Unterseite, wo er besser sichtbar ist). Und der untere und rechte Rand sind dicker als der linke und obere Rand. Das sehr blasse graue Band hinter dem Punkt ist in Kairo breiter. Diese Probleme sind im Standard-PDF-Gerät nicht vorhanden.
Ich arbeite derzeit an einem 21 Fedora-System, aber dieses Dokument muss auch auf Windows 8 oder 10 kompiliert und vorzugsweise auch auf anderen Linux-Varianten.
Hier ist der Code für die Handlung (soll in kleineren Größen, etwa 2x1,5 Zoll angesehen werden). Der aktuelle Plan ist, den Text in der c.a
Variable haben und es zu platzieren, wo eine Achsenbeschriftung wäre, aber ich möchte meine Optionen offen halten später eine Anmerkung zu machen:
offset.plotdata <- data.frame(understandability=c(2.95, 0.85, 0.75, 1.15, 2.25, 2.05, 1.95, 2.15, 2.25, 0.75, 2.05, 0.85), lowercase.pseudonym=c("A", "B", "C", "D", "E", "F", "A", "D", "E", "C", "F", "B"), questionnaire=c(rep("pre", 6), rep("post", 6)))
offset.plotdata$decorative.points <- c(1,2,3,4,5,NA,1,2,3,4,5,NA)
middle.blue <- "#2186D9"
variable.name <- "understandability"
cor.value <- 0.84
c.a <- "rho = 0.84"
ggplot(offset.plotdata,
aes_string(x="questionnaire", y=variable.name,
group="lowercase.pseudonym"))+
geom_line(colour=middle.blue)+
ylim(c(5,0.5))+
theme_bw()+
theme(panel.grid.major.y = element_line(size=5, color="#f8f8f8"),
panel.grid.minor.y=element_blank(),
panel.grid.major.x=element_blank(),
panel.grid.minor.x=element_blank(),
text = element_text(size=9),
axis.text=element_text(size=8),
axis.ticks.y=element_blank(),
plot.margin = unit(c(0,5,0,0), "mm")
#axis.title.y=element_text(margin=margin(0,20,0,0))
)+
labs(y="Angekreuzte Option", x=as.character(c.a))+
scale_x_discrete(expand = c(0,0), label=c("Vorher", "Nachher"))+
#ggtitle("gepaarte Antworten")+
geom_point(data=offset.plotdata,
aes(x=questionnaire,y=decorative.points),
fill=middle.blue,
colour=middle.blue,
size=5)
weiß nicht, aber können Sie ein bisschen mehr hinzufügen, wie Kairo den Rest Ihrer Handlung vermasselt? Vielleicht ist dieser Teil des Problems reparierbar. Es wäre wahrscheinlich auch hilfreich, Informationen über Ihre Plattform (Betriebssystem und Version) hinzuzufügen, da einige dieser Probleme plattformspezifisch sind. –
@BenBolker aktualisiert. – rumtscho
und warum möchte eine gemischte Zeichenfolge, die in einer Variablen gespeicherte Informationen enthält, mit 'expression()'/plotmath auskommen? z. B. cor.value <- 0,84; ersetze (Ausdruck (rho = x), Liste (x = cor.value)) ' –