我想用两个expression()语句写一个轴标签.但是,plotmath并且expression不允许这样(例如,下标文本出现在最右侧).我在大约2005年发现了类似问题的讨论,但他们提供的工作并没有转化为我在ggplot2中的应用程序.最近的一个问题解决了多行表达式语句的不同排列,但是这里提供的工作再次不适用于此.
例:
p <- ggplot(mtcars,aes(x=wt,y=mpg))+
geom_point()+
xlab(expression(paste("A long string of text goes here just for the purpose \n of illustrating my point Weight "[reported])))
try(ggsave(plot=p,filename=<some file>,height=4,width=6))
Run Code Online (Sandbox Code Playgroud)
产生一个图像,其中下标"报告"在我希望它位于前一个单词旁边时向右踢出.

我正试图在条形图中显示频率......好吧,我想要它们在图表中的某个位置:条形图,条形图形,条形图形区域或图例区域.我记得(我可能错了)它可以完成ggplot2.这可能很简单......至少看起来很容易.这是代码:
p <- ggplot(mtcars)
p + aes(factor(cyl)) + geom_bar()
Run Code Online (Sandbox Code Playgroud)
我有可能在图表中嵌入频率吗?
该ggplot2附加软件包,cowplot具有用来绘制多条曲线称为一个不错的功能plot_grid().这是plot_grid()在行动:
library(ggplot2); library(cowplot)
plot_a <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
plot_b <- ggplot(mtcars, aes(mpg, disp)) + geom_point()
plot_grid(plot_a, plot_b, labels = c("A", "B"))
Run Code Online (Sandbox Code Playgroud)
但请注意加载如何cowplot更改默认的绘图样式.如何加载cowplot包以便我可以使用该plot_grid()功能,但也禁用cowplot强制执行的默认打印样式?
我有以下数据框:
# Dummy data frame
df <- expand.grid(x = 1:3, y = 1:3)
Run Code Online (Sandbox Code Playgroud)
我想把它描绘成一个像这样的geom_tile使用ggplot2:
# Tile plot
ggplot(df) +
geom_tile(aes(x = x, y = y),
fill = NA, colour = "red", size = 3, width = 0.7, height = 0.7)
Run Code Online (Sandbox Code Playgroud)
这使,
但请注意,在每个瓷砖的左上角,缺少一个缺口,其中边框不能正确地吻合.如果我使用,我会得到相同的结果geom_rect.有没有解决方法来避免这种情况?
R version 3.5.1 (2018-07-02)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
Matrix products: default
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用相同的x轴但不同的y轴创建多个绘图,因为我有两个具有不同范围的组的值.当我想控制轴的值(分别为y轴要达到从2000000到4.000.000和250.000 500.000),我不相处facet_grid与scales = "free".
所以我试过的是创建两个图(名为"plots.treat"和"plot.control")并将它们与grid.arrange和组合arrangeGrob.我的问题是,我不知道如何控制两个图的确切位置,因此两个y轴都位于一条垂直线上.因此,在下面的示例中,第二个图的y轴需要向右侧稍微定位.
这是代码:
# Load Packages
library(ggplot2)
library(grid)
library(gridExtra)
# Create Data
data.treat <- data.frame(seq(2005.5, 2015.5, 1), rep("SIFI", 11),
c(2230773, 2287162, 2326435, 2553602, 2829325, 3372657, 3512437,
3533884, 3519026, 3566553, 3527153))
colnames(data.treat) <- c("Jahr", "treatment",
"Aggregierte Depositen (in Tausend US$)")
data.control <- data.frame(seq(2005.5, 2015.5, 1), rep("Nicht-SIFI", 11),
c(324582, 345245, 364592, 360006, 363677, 384674, 369007,
343893, 333370, 318409, 313853))
colnames(data.control) <- c("Jahr", "treatment",
"Aggregierte Depositen (in Tausend US$)")
# Create Plot …Run Code Online (Sandbox Code Playgroud) 我想在多面 ggplot 的绘图区域外添加注释。我可以获得我想要的注释,但它会针对每个方面重复。我怎样才能让这个注释只出现一次?
例如,要在左上角注释“XX”一次,我可以使用:
library("ggplot2")
ggplot(mtcars, aes(x = hp, y = mpg)) +
geom_point() +
facet_grid(.~cyl ) +
annotate("text", x = -20, y = 36, label = "XX") +
coord_cartesian(xlim = c(50, 350), ylim = c(10, 35), clip = "off")
Run Code Online (Sandbox Code Playgroud)
然而,这实际上将其注释到每个方面的左上角。
我怎样才能让它只出现一次?
我刚刚使用了ggplot2,所有的情节都没有灰色的默认背景.我不知道为什么它这样做,因为它在两周前工作,从那时起我就没有触及R. 不确定它是R中的错误还是我的错误.
library(ggplot2)
library(gridExtra)
library(cowplot)
p1=ggplot(health,aes(Smoker,Pulse))+geom_boxplot(aes(fill=factor(Smoker))) +geom_jitter()
p1
Run Code Online (Sandbox Code Playgroud)
在我使用灰色瓷砖来获取背景之前,这就是我上面的内容.任何帮助都会非常感谢.