- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在使用 facet_wrap()
时去除条形标签的冗余并使用两个变量进行刻面,并且都可以自由缩放。
例如,这个 facet_wrap
下图的版本
library(ggplot2)
dt <- txhousing[txhousing$year %in% 2000:2002 & txhousing$month %in% 1:3,]
ggplot(dt, aes(median, sales)) +
geom_point() +
facet_wrap(c("year", "month"),
labeller = "label_both",
scales = "free")
facet_grid
它的版本,其中 strip 标签位于图形的顶部和右侧边缘(也可以是底部和左侧边缘)。
ggplot(dt, aes(median, sales)) +
geom_point() +
facet_grid(c("year", "month"),
labeller = "label_both",
scales = "free")
facet_grid
不是一种选择,因为据我所知,它不允许秤“完全免费” - 见
here或
here
library(cowplot)
theme_set(theme_gray())
p1 <- ggplot(dt[dt$year == 2000,], aes(median, sales)) +
geom_point() +
facet_wrap("month", scales = "free") +
labs(y = "2000") +
theme(axis.title.x = element_blank())
p2 <- ggplot(dt[dt$year == 2001,], aes(median, sales)) +
geom_point() +
facet_wrap("month", scales = "free") +
labs(y = "2001") +
theme(strip.background = element_blank(),
strip.text.x = element_blank(),
axis.title.x = element_blank())
p3 <- ggplot(dt[dt$year == 2002,], aes(median, sales)) +
geom_point() +
facet_wrap("month", scales = "free") +
labs(y = "2002") +
theme(strip.background = element_blank(),
strip.text.x = element_blank())
plot_grid(p1, p2, p3, nrow = 3)
facet_wrap
中是否有内容这可以允许所需的输出。 我觉得我错过了一些明显的东西,也许我对答案的搜索没有包含正确的关键词(我觉得这个问题之前已经解决了)。
最佳答案
这似乎并不容易,但一种方法是使用网格图形将 facet_grid 图中的面板条插入到创建为 facet_wrap 的面板中。像这样的东西:
首先让我们使用 facet_grid 和 facet_wrap 创建两个图。
dt <- txhousing[txhousing$year %in% 2000:2002 & txhousing$month %in% 1:3,]
g1 = ggplot(dt, aes(median, sales)) +
geom_point() +
facet_wrap(c("year", "month"), scales = "free") +
theme(strip.background = element_blank(),
strip.text = element_blank())
g2 = ggplot(dt, aes(median, sales)) +
geom_point() +
facet_grid(c("year", "month"), scales = "free")
g1
的顶部刻面 strip 来自
g2
library(grid)
library(gtable)
gt1 = ggplot_gtable(ggplot_build(g1))
gt2 = ggplot_gtable(ggplot_build(g2))
gt1$grobs[grep('strip-t.+1$', gt1$layout$name)] = gt2$grobs[grep('strip-t', gt2$layout$name)]
grid.draw(gt1)
gt.side1 = gtable_filter(gt2, 'strip-r-1')
gt.side2 = gtable_filter(gt2, 'strip-r-2')
gt.side3 = gtable_filter(gt2, 'strip-r-3')
gt1 = gtable_add_cols(gt1, widths=gt.side1$widths[1], pos = -1)
gt1 = gtable_add_grob(gt1, zeroGrob(), t = 1, l = ncol(gt1), b=nrow(gt1))
panel_id <- gt1$layout[grep('panel-.+1$', gt1$layout$name),]
gt1 = gtable_add_grob(gt1, gt.side1, t = panel_id$t[1], l = ncol(gt1))
gt1 = gtable_add_grob(gt1, gt.side2, t = panel_id$t[2], l = ncol(gt1))
gt1 = gtable_add_grob(gt1, gt.side3, t = panel_id$t[3], l = ncol(gt1))
grid.newpage()
grid.draw(gt1)
关于r - 如何像在 facet_grid 中一样在 facet_wrap 中定位 strip 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52706599/
如标题所述。我可以使用 strip --strip-all 它将所有符号从 .ko 文件中去除。但是,如果我尝试使用 strip --strip-symbol=symbolname 仅删除一个符号,它
我正在使用 BeautifulSoup 在 Python 中完成抓取任务,但遇到了一些奇怪的错误。它提到了 strip,我没有使用它,但我猜可能与 BSoup 的进程有关? 在我试图转到原始 url
简单的问题。如何在 iReport 中的现有 strip 之间插入细节 strip ?比如我现在的情况: 细节 1 细节2 细节 3 ...我想在细节 2 和细节 3 之间添加另一个细节带。有什么简单
我的 strip 仪表板上不断收到错误代码 400。似乎我不止一次使用相同的 strip 标记,这会产生错误。下面是我的代码。 Js: var handler = Stri
我有一个 Unicode 字符串,在开头和结尾有一些不间断的空格。使用 strip() 与 strip(string.whitespace) 时,我得到不同的结果。 >>> import string
我正在尝试制作许多“小倍数”图。 (旁白/背景)我有太多方面无法在单个图中显示,因此我需要手动将它们划分为单独的图。我希望我能通过想要的 ncol和 nrow至 facet_wrap它会根据我的需要制
我读了很多东西,发现这个配置有两个副作用: 使二进制大小更小 程序显示更好的调试崩溃 我正在为 iOS 构建程序,所以我希望我的二进制文件尽可能小。这个意思: 如果我设置 是 对于这两个配置,我的二进
https://plotly.com/python/strip-charts/ 中的第二个例子显示添加颜色(见下面的屏幕截图),但这也会自动在红色和蓝色点之间创建间距。 如何关闭它?如何确保我的点为分
如果二进制文件大小不是问题,使用 -g 而不是剥离要在性能关键环境中运行的二进制文件是否有任何缺点?我有很多磁盘空间,但二进制文件是 CPU 密集型的并且使用大量内存。二进制文件加载一次并存活数小时。
代码 library(ggplot2) library(dplyr) mydata = tribble( ~x, ~y, ~data, ~more, 0, 50, 'iris', 'this'
“复制期间的条调试符号”和“条链接的产品”选项之间有什么区别? 如果“复制期间的 strip 调试符号” =是,“ strip 链接产品” =否是什么意思? 是否可以将带有符号数据的应用程序上载到Ap
我使用以下代码使用 stripe.createToken 方法为银行帐户创建了一个 token 。 stripe.createToken('bank_account', { country: 'U
我正在尝试安装 imwheel,一个用于 linux 的鼠标配置客户端,当我在尝试安装该软件包时遇到此输出时,作为一个完全的菜鸟被难住了,因为我以前这样做过并且从未遇到过这个问题(我曾经使用 paca
使用 str.strip 可以通过两种方式在空白处进行分割。 。您可以发出不带参数的调用,str.strip(),默认使用空格分隔符,或者自己使用 str.strip(' ')< 显式提供参数。 但是
我正在构建一个蚊子docker镜像,当调用make install时遇到以下错误消息“安装:无法识别的选项:strip-program = strip”,请帮助,谢谢。 install -d /usr
我正在构建我想要生成发布版本的代码。但是,我也希望能够在 cores 崩溃时对其进行调试。 所以我读到可以使用带有调试符号的构建,然后生成运行 strip 的二进制文件的拷贝。然后,您可以使用剥离的二
我使用 TestFlight 进行远程崩溃报告。现在,我正在为此使用 Google Analytics。 TestFlight 建议禁用“复制期间剥离调试符号”和“剥离链接产品”。谷歌分析——没有。我
在将“复制过程中剥离调试符号”设置为"is"的情况下执行存档构建时,我收到警告“跳过复制阶段剥离,二进制代码已签名”。关于此问题,通常建议的线程解决方案是将“复制期间剥离调试符号”设置为“否”。当然可
在现代linux中,几乎所有对象都被剥离并分为两部分(两个文件)。第一个是可执行文件本身,第二个是调试符号,从原始ELF中删除。这样的文件是用 objcopy --only-keep-debug or
我定义了三 Stripe 计划(免费、普通、高级)。当用户想要升级(例如从普通用户到高级用户)时,用户应该使用高级计划获得新订阅。 到目前为止,这是我的代码: subscription = strip
我是一名优秀的程序员,十分优秀!