Chciałbym, aby na moim wykresie pojawiły się znaki Unicode, jako część mieszanego ciągu znaków, na przykład ρ=0.84
, gdzie 0.84 jest zapisany w zmiennej, powiedzmy cor.value
.Znaki ggplot unicode bez Kairu?
To praktycznie wyklucza takie rozwiązania, jak expression
lub bquote
(sugerowane here). Nie wiem, czy działałyby same, ale próba połączenia ich z wartością zmiennej za pośrednictwem paste
stanowi problem. Jedynym sposobem, w jaki mogłem go uruchomić, było użycie symbolu unicode w moim źródle. Pojawiło się nawet na działce w R Studio.
Ale kiedy próbowałem drukować, otrzymałem tylko ..
. Jedyna sugestia, jaką do tej pory znalazłem, to use Cairo, ale Kair miesza resztę mojego spisku, więc chcę trzymać się oryginalnego urządzenia pdf.
Czy jest jakaś szansa, używając Unicode lub czegoś innego, aby wydrukować ten ciąg na działce, ale nie używając Kairu?
Oto przykład tego, co robi Cairo (to ma być rogu wykresu, z szarą obwódką):
Częściowa kropka jest odcięty, nie obcięty. Tak więc, gdy jest on nałożony na granicę, granica jest nieco przesunięta, a kropki "pokazują" granicę (tutaj widać ją tylko na dole, gdzie indziej jest bardziej widoczna). Dolna i prawa krawędź jest grubsza niż lewa i górna granica. Bardzo jasnoszary pasek za kropką jest szerszy w Kairze. Te problemy nie występują w standardowym urządzeniu PDF.
Obecnie pracuję w systemie Fedora 21, ale dokument ten musi również przygotować na Windows 8 lub 10, a najlepiej również w innych smakach Linux.
Oto kod dla działki (przeznaczony do oglądania w małych rozmiarach, około 2x1,5 cala). Obecny plan jest mieć tekst w zmiennej c.a
i umieścić go gdzie etykieta oś będzie, ale chcę, aby moje opcje otwarte, aby adnotacja później:
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)
Nie wiem, ale czy możesz dodać trochę więcej o tym, w jaki sposób Kair manipuluje pozostałą częścią twojej fabuły? Być może ta część problemu jest naprawialna. Pomocne może być również dodanie informacji o twojej platformie (systemie operacyjnym i wersji), ponieważ niektóre z tych problemów dotyczą konkretnej platformy. –
@BenBolker zaktualizowany. – rumtscho
i dlaczego chce mieć mieszany ciąg zawierający informacje przechowywane w zmiennej reguły out przy użyciu 'expression()'/plotmath? np. cor.value <- 0,84; substitute (wyrażenie (rho = x), list (x = cor.value)) ' –