我的类别需要用希腊字母命名.我正在使用ggplot2它,它可以很好地处理数据.不幸的是,我无法弄清楚如何将这些希腊符号放在x轴(刻度线)上,并使它们出现在图例中.有什么办法吗?
更新:我看了一下链接,然而,没有很好的方法来描述我想要做的事情.
这是问题:我ggplot用来制作一个图表,其中x轴的范围是-90到90度.我已成功使用函数将度数符号添加到创建的刻度标签中by scale_x_continuous.但是,当我使用调整字体面时theme(),刻度标签不会变为粗体.但是,更改字体大小是有效的.这是一个可重复的例子:
# function to add degree symbols
add_degree <- function(x) {
parse(text = paste(x, "*degree",sep = ""))
}
y<- c(0.00552243346007605, 0.00553155893536122, 0.005693536121673,
0.0054722433460076, 0.00562661596958175, 0.00546768060836502,
0.00561292775665399, 0.00550950570342205, 0.0056851711026616,
0.00551558935361217, 0.0055041825095057, 0.00556501901140684,
0.00552699619771863, 0.00552623574144487, 0.0055680608365019,
0.00567148288973384, 0.00550342205323194, 0.00553764258555133,
0.00538098859315589, 0.00573307984790875, 0.00564486692015209,
0.00561444866920152, 0.00556349809885932, 0.00571254752851711,
0.00544030418250951, 0.00557946768060837, 0.00546083650190114,
0.00549049429657795, 0.00557414448669202, 0.00553916349809886,
0.00551787072243346, 0.00557794676806084, 0.0055041825095057,
0.00552699619771863, 0.0056509505703422, 0.00544790874524715,
0.00555555555555556)
x <- seq(-90,90,by = 5)
dat <- data.frame(x,y)
ggplot(dat,aes(x = x, y = y))+
geom_line()+
scale_x_continuous(limits = …Run Code Online (Sandbox Code Playgroud) 这个问题解释了如何在图中添加数学符号。但是当文本应该存储在数据框本身中时,这不起作用。出现在 facet_wrap 子图的小框中的文本就是这种情况。
这是一个可重现的示例。例如,假设我有 T 和 m³ 的数据,并且我想绘制这样的图。
library(ggplot2)
dtf <- data.frame(year = rep(1961:2010,2),
consumption = cumsum(rnorm(100)),
item = rep(c("Tea bags","Coffee beans"),each=50),
unit = rep(c("T","m^3"),each=50))
ggplot(data=dtf)+
geom_line(aes(x=year, y=consumption),size=1) +
ylab(expression(paste("Consumption in T or ",m^3))) +
scale_x_continuous(breaks = seq(1960,2010,10)) +
theme_bw() + facet_wrap(item~unit, scales = "free_y")
Run Code Online (Sandbox Code Playgroud)
ylab(expression(m^3))正确显示单位。我怎么能在 facet 中显示类似的 m³?
Gnu R以非常奇怪的方式发布公式和符号.它经常在这里讨论并在R helppage中提到?plotmath.对于任何曾经LaTeX为R中的简单公式编写代码的人看起来都不可读并且写错了.
是否有更好的方法来注释公式?有这样的函数tex2r("x_2")会生成奇怪的代码吗?
我正在寻找一个没有TikZdevice的解决方案,因为TikZdevice仍然非常脆弱,并且printoout看起来并不完全相同.