相关疑难解决方法(0)

将LaTeX变成R图

我想补充LaTeX排版到地块元件R(例如:标题,轴标签,注释等)的使用任一组合base/lattice或与ggplot2.

问题:

  • 有没有办法LaTeX使用这些包进入图表,如果是这样,它是如何完成的?
  • 如果没有,是否需要额外的包来完成此任务.

例如,通过这里讨论的包进行Python matplotlib编译:http://www.scipy.org/Cookbook/Matplotlib/UsingTexLaTeXtext.usetex

是否有类似的过程可以生成这样的图R

plot latex r

116
推荐指数
5
解决办法
8万
查看次数

将数学符号和下标与普通字母混合在一起

我想绘制一个看起来像这样的标签ggplot2:

Value is $\sigma$, R^{2} = 0.6Value is普通字体在哪里,$\sigma$是一个希腊小写的西格玛字母,R^{2} = 0.6显示为R带有上标2后跟等号(=)后跟的0.6.如何在ggplot factorxlab,ylabR之类的参数中使用它?

r ggplot2 mathematical-typesetting

53
推荐指数
2
解决办法
6万
查看次数

显示大于或等于的符号

我有一个由此产生的情节:

ggplot(dt.2, aes(x=AgeGroup, y=Prevalence)) + 
    geom_errorbar(aes(ymin=lower, ymax=upper), colour="black", width=.2) +
    geom_point(size=2, colour="Red")
Run Code Online (Sandbox Code Playgroud)

我像这样控制x轴标签:

scale_x_discrete(labels=c("0-29","30-49","50-64","65-79",">80","All")) +
Run Code Online (Sandbox Code Playgroud)

这有效,但我需要将"> 80"标签更改为"≥80".

但是"≥80"显示为"= 80".

如何显示大于或等号?

r ggplot2 plotmath

38
推荐指数
3
解决办法
4万
查看次数

ggplot图例标签内的希腊字母,符号和换行符

我在尝试着

  1. 换行(自动或强制)
  2. 证明文本的合理性(左侧或左侧和右侧)
  3. 有希腊字母和百分号

在gglot图例标签内.

我已经尝试了几种方法,但我似乎无法将我读到的所有技巧结合起来.

我可以通过插入\n标签来获得换行符,但这似乎不适用于希腊字母,而不适用于图例标签.或者我可以在基础图中通过组合mtext()bquote()插入一段文本(EDIT)来设置换行符和希腊字母,但正如Gregor在评论部分中指出的那样,这不起作用ggplot.下面我结合list使用paste0()to将文本传递给图例标签:问题是我找不到插入希腊字母的方法,例如gamma.

感谢你的建议.

这是我的一次尝试的MWE (编辑:改进的MWE):

label1.line1 <- "Not much to say about this one"
label2.line1 <- "blabla blabla, blabla blabla, blee blee blee (bling, bling, bling),"
label2.line2 <- paste0("(", "1900-2014: g = 1.50%, gamma = 2.75%, and r = 2.30%",")")
label3.line1 <- "blabla blabla, blabla blabla, blee blee blee (bling, bling, bling),"
label3.line2 <- paste0("(", "1900-2014: g = 2.50%, …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

31
推荐指数
1
解决办法
2万
查看次数

如何在ggplot2图例中使用下标[R]

我可以在ggplot2传奇中使用下标吗?我在传说和其他地方的希腊字母上看到了这个问题,但我无法弄清楚如何适应它.

我认为使用expression(),在轴标签中工作,可以做到这一点.但我的尝试失败了.谢谢!

library(ggplot2)
temp <- data.frame(a = rep(1:4, each = 100), b = rnorm(4 * 100), c = 1 + rnorm(4 * 100))
names(temp)[2:3] <- c("expression(b[1])", "expression(c[1])")
temp.m <- melt(temp, id.vars = "a")
ggplot(temp.m, aes(x = value, linetype = variable)) + geom_density() + facet_wrap(~ a)
Run Code Online (Sandbox Code Playgroud)

r ggplot2

25
推荐指数
2
解决办法
1万
查看次数

如何使用网格编辑ggplot2对象以将数学表达式添加到构面标签?

我需要使用ggplot2中的facet_wrap()将希腊字母放入facet标签中.我发现了一个描述facet_grid()的链接.我使用以下代码将其应用于我的数据:

levels(parameters) <- c(expression(alpha), expression(beta))  
p + facet_grid(.~parameters, labeller = label_parsed)
Run Code Online (Sandbox Code Playgroud)

这很有效,完全符合我的要求.但是,我需要使用facet_wrap()(为两个参数获取单独的y轴,并在不同的列和行中绘制更多参数).我尝试了以下方法:

p + facet_wrap(.~parameters, labeller = label_parsed)  ,  or  
p + facet_wrap(.~parameters)
Run Code Online (Sandbox Code Playgroud)

但是这没有用,因为facet_wrap中没有"贴标机"功能.如何使用网格完成?

r ggplot2 r-grid

6
推荐指数
1
解决办法
2720
查看次数

如何将表达式传递给ggplot中的geom_text标签?

我试图将带有下标的表达式传递给geom_text()中的单个标签ggplot。这是我现在的代码:

my_exp <- expression('my_exp'[s][u][b])

my_data <- 
  data.frame(
    var_1 = c("a", "b", "c"),
    var_2 = c(1, 2, 3)
  )

my_data %>%
  ggplot(aes(x = var_1, y = var_2))+
  geom_text(aes(label = var_1))
Run Code Online (Sandbox Code Playgroud)

这是结果图:

[这是结果图][1]。

我想做的是将 的var_1值替换"a"为 由 指定的表达式my_exp,然后geom_text()将该值作为表达式求值,从而导致下标出现在 ggplot 上。

expression r subscript ggplot2 geom-text

6
推荐指数
1
解决办法
3337
查看次数

小平面标签涉及希腊符号

假设我有如下数据和图:

mydata = data.frame(x=rnorm(4), y=runif(4), tau=c(0,0,1,1))
ggplot(mydata) + geom_point(aes(x=x, y=y)) + facet_wrap(~ tau)
Run Code Online (Sandbox Code Playgroud)

我希望facet标签分别读作"tau = 0"和"tau = 1",并将tau格式化为希腊符号.我从另一个问题中得知,使用贴标机label_parsed将自己格式化字母tau,但等号似乎使事情变得复杂.一个理想的解决方案不需要我更改数据(即使tau成为一个因素并命名其级别),但我将采取任何有效的工作:)

r ggplot2

5
推荐指数
1
解决办法
2737
查看次数

没有开罗的ggplot unicode角色?

我希望在我的绘图中出现Unicode字符,作为混合字符串的一部分,例如?=0.84将0.84保存在变量中,比方说cor.value.

这实际上排除了诸如expressionbquote(这里建议)的解决方案.我不知道它们是否会单独工作,但试图将它们与变量值相结合paste是一个问题.我能让它工作的唯一方法是在我的源代码中实际使用unicode符号.它甚至出现在R Studio的情节中.

但是当我试图打印时,我只是..改为.到目前为止,我发现的唯一建议是使用开罗,但开罗正在破坏我的剩余情节,所以我想坚持使用原始的pdf设备.

有没有机会,通过使用Unicode或其他东西,在字幕中打印字符串,但不必使用开罗?


这是开罗所做的一个例子(这应该是图的一角,带有灰色边框):

来自开罗的截图

部分点被切断,没有被剪裁.因此,当它与边框重叠时,边框略微偏移,并且点"透过"边框(此处您只在底部看到它,在其他地方它更明显).底部和右侧边框比左边和上边框更粗.点背后非常浅灰色的带子在开罗更为宽广.标准PDF设备中不存在这些问题.

标准截图

我目前正在研究Fedora 21系统,但是这个文档也必须在Windows 8或10上编译,最好也在其他Linux版本上编译.


这是绘图的代码(打算以小尺寸观看,大约2x1.5英寸).当前的计划是将文本放在c.a变量中并将其放在轴标签所在的位置,但我希望保持我的选项打开以使其成为后面的注释:

 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"))+ …
Run Code Online (Sandbox Code Playgroud)

unicode r ggplot2

5
推荐指数
1
解决办法
344
查看次数

如何在ggplot2的geom_text()标签中向标签添加希腊字母

我试图用希腊符号 kappa 标记 geom_tile 中的瓷砖,如下所示

kappa = 价值

我试过使用 expression() 和 bquote() 但找不到让它工作的方法

df = data.frame(x = letters[1:10],y = letters[11:20], value = 1:10)

p = ggplot(df, aes(x = x, y = y)) +
  geom_tile()+geom_text(aes(label= paste("k = ",value,"")), color = "white")

p

[![enter image description here][1]][1]


  [1]: https://i.stack.imgur.com/5bDLv.png
Run Code Online (Sandbox Code Playgroud)

r ggplot2 geom-text

5
推荐指数
1
解决办法
283
查看次数