- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个共享 y 轴但具有不同 x 轴的图。我使用 facet_grid 将它们适本地分开(见图),但是两个 x 轴需要有不同的标题(而不是一个标题“Num Cell Lines.Tissue”)。我已经看到通过首先创建 2 个 ggplot 对象然后使用像 ggplotGrob 这样的函数来完成类似的事情。有没有办法直接做到这一点?
编辑 1:包含数据、代码
数据:
Variable Condition Num.CellLines.Tissue Percent.Altered
V1 C1 1 0.20149254
V1 C1 2 0.03731343
V1 C1 3 0
V1 C1 4 0
V1 C1 5 0
V2 C2 1 0.74893617
V2 C2 2 0.37446809
V2 C2 3 0.16595745
V2 C2 4 0.09787234
V2 C2 5 0.06808511
V2 C2 6 0.05531915
V2 C2 7 0.02553191
V2 C2 8 0.01702128
V2 C2 9 0.01276596
V2 C2 10 0.00851064
V2 C3 1 0.88554217
V2 C3 2 0.68072289
V2 C3 3 0.40361446
V2 C3 4 0.22289157
V2 C3 5 0.11445783
V2 C3 6 0.06626506
V2 C3 7 0.04819277
V2 C3 8 0.01807229
V2 C3 9 0.01807229
V2 C3 10 0.01204819
V2 C4 1 0.87301587
V2 C4 2 0.6984127
V2 C4 3 0.52380952
V2 C4 4 0.38095238
V2 C4 5 0.25925926
V2 C4 6 0.14285714
V2 C4 7 0.07407407
V2 C4 8 0.04232804
V2 C4 9 0.03703704
V2 C4 10 0.03174603
ggplot(data, aes(y=Percent.Altered, x = Num.CellLines.Tissue, color= Condition )) + geom_line(size=1) + facet_grid(. ~ Variable, scales="free_x")
最佳答案
我们可以使用 switch = 'x'
然后放置 strip.placement = "outside"
library(tidyverse)
text = "Variable Condition Num.CellLines.Tissue Percent.Altered
V1 C1 1 0.20149254
V1 C1 2 0.03731343
V1 C1 3 0
V1 C1 4 0
V1 C1 5 0
V2 C2 1 0.74893617
V2 C2 2 0.37446809
V2 C2 3 0.16595745
V2 C2 4 0.09787234
V2 C2 5 0.06808511
V2 C2 6 0.05531915
V2 C2 7 0.02553191
V2 C2 8 0.01702128
V2 C2 9 0.01276596
V2 C2 10 0.00851064
V2 C3 1 0.88554217
V2 C3 2 0.68072289
V2 C3 3 0.40361446
V2 C3 4 0.22289157
V2 C3 5 0.11445783
V2 C3 6 0.06626506
V2 C3 7 0.04819277
V2 C3 8 0.01807229
V2 C3 9 0.01807229
V2 C3 10 0.01204819
V2 C4 1 0.87301587
V2 C4 2 0.6984127
V2 C4 3 0.52380952
V2 C4 4 0.38095238
V2 C4 5 0.25925926
V2 C4 6 0.14285714
V2 C4 7 0.07407407
V2 C4 8 0.04232804
V2 C4 9 0.03703704
V2 C4 10 0.03174603"
data <- read.table(text = text, header = TRUE)
head(data)
#> Variable Condition Num.CellLines.Tissue Percent.Altered
#> 1 V1 C1 1 0.20149254
#> 2 V1 C1 2 0.03731343
#> 3 V1 C1 3 0.00000000
#> 4 V1 C1 4 0.00000000
#> 5 V1 C1 5 0.00000000
#> 6 V2 C2 1 0.74893617
ggplot(data, aes(y = Percent.Altered, x = Num.CellLines.Tissue, color = Condition )) +
geom_line(size = 1) + facet_grid(. ~ Variable, scales = "free_x", switch = 'x') +
theme_classic(base_size = 16) +
theme(strip.placement = "outside") +
theme(axis.title.x = element_blank(),
strip.background = element_blank())
# Append the original x-axis label. Code taken from the ref below
# http://ggplot2.tidyverse.org/reference/as_labeller.html
appender <- function(string, prefix = "Num.CellLines.Tissue: ") paste0(prefix, string)
ggplot(data, aes(y = Percent.Altered, x = Num.CellLines.Tissue, color = Condition )) +
geom_line(size = 1) +
facet_grid(. ~ Variable,
labeller = as_labeller(appender),
scales = "free_x", switch = 'x') +
theme_classic(base_size = 16) +
theme(strip.placement = "outside") +
theme(axis.title.x = element_blank(),
strip.background = element_blank())
V1
&
V2
分别然后使用
cowplot::plot_grid
合并在一起功能:
# V1
p1 <- ggplot(data %>% filter(Variable == "V1"),
aes(y = Percent.Altered, x = Num.CellLines.Tissue, color = Condition )) +
geom_line(size = 1) +
facet_grid(. ~ Variable, scales = "free_x") +
scale_y_continuous(limits = c(0, 1), expand = c(0, 0)) +
theme_classic(base_size = 16) +
theme(
legend.position = "none",
plot.margin = unit(c(0, 0, 0, 0), "cm")) +
scale_color_brewer(palette = "Set1") +
xlab("# Tissues")
# V2
p2 <- ggplot(data %>% filter(Variable == "V2"),
aes(y = Percent.Altered, x = Num.CellLines.Tissue, color = Condition )) +
geom_line(size = 1) +
facet_grid(. ~ Variable, scales = "free_x") +
scale_y_continuous(limits = c(0, 1), expand = c(0, 0)) +
theme_classic(base_size = 16) +
theme(
legend.position = "none",
plot.margin = unit(c(0, 0, 0, 0), "cm")) +
scale_color_brewer(palette = "Dark2") +
xlab("# Cell Lines") + ylab("")
# Remove the y-axis for the 2nd plot - p2 then merge 2 plots
cowplot::plot_grid(p1,
p2 +
theme(axis.text.y = element_blank(),
axis.line.y = element_blank(),
axis.title.y= element_blank(),
axis.ticks.y= element_blank()),
nrow = 1,
rel_widths = c(1.2, 1),
align = 'h', axis = 'tb')
关于r - ggplot : How to create different x-axis titles with facet_grid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49092604/
有什么方法可以覆盖无法直接编辑的页面标题,只能在页眉中添加 Javascript? 我不能直接编辑的行是: Title of the page 我能想到的解决这个问题的唯一方法是在我可以通过我的门户后
这是我的基础文件 {% load static %} {% include "feed/header.html" %} {% block content%} {% endblock %} {% inc
请说明 之间有什么区别标记和 标签。 Page title 如果两者都使用,哪个最优先? 我观察到一些网站同时具有 和 tags 和 两者相同,这是预期的,请确认? 如果我们不使用 标签标题,我
我有一个带有唯一title的表_primary,并且我有一个需要设置引用title的表_secondary > 对于 _primary 表。 最佳答案 尝试这个解决方案并让我知道它对您有用。 ALTE
我正在尝试学习使用 PDO 而不是 MySQLi 进行数据库访问,但我在从数据库中选择数据时遇到了问题。我想使用: $STH = $DBH->query('SELECT * FROM ratings
我了解 title 和 alt 属性的用途,但我只是不了解它们的最佳用途,或者我是否可以使用相同的 title /alt 不止一次。 例如,以一个关于狗的网站为例: 根据我的理解,所有 img 标签都
我分配了一个带有标题 (initWithTitle) 的 UITabBarItem 并将其连接到 UINavigationController。 我发现,如果导航 Controller 的 Root
我有标签栏和导航栏。在导航栏中我有表格 View 。问题是,当我在 IB 中将标题设置为选项卡栏,然后在 TableView 中设置标题时,选项卡栏标题将更改为 TableView 中的标题,并且我在
在我的 JSP 页面中,我使用 显示页面标题,有时可以,但有时页面显示无法cpmplie代码 。所以我将代码更改为 ${TITLE} ,也可以。 有什么不同和${TITLE}在jsp中? 这是我的页
我目前正在向 Jade 和 node.js 介绍自己 由于我想避免冗余,我想到将域名附加到当前标题,例如Blog | example.com 我的 Jade 模板得到了 Blog通过 Node.js
//Sorting userDefined object from ArrayList<>... import java.io.*; import java.util.*; class Song
我的网站有这两个元标记,它们目前具有相同的值: 第二个是 facebook 连接所需的格式。 这是否意味着第一个是多余的并且可以删除? 最佳答案 最好同时存在这两个标签。该标签告诉搜索引擎有
我现在对 ASP.NET MVC 的 Razor ViewEngine 感到困惑。 大多数人会说: View.Title 与相同 ViewData["Title"] 运行应用程序后我得到了这个 Com
UIViewController 的 title 属性的用途是什么,不能用 navigationItem.title 设置标题吗? 两者似乎都有效,我只是想知道为什么会有这种看似重复的功能。 最佳答案
我仍在学习如何将 API 数据与 react 和 nextjs 一起使用。但是,为什么我的函数只在我编写 {props.props.title} 而不是我期望的 {props.title} 时起作用?
我正在尝试编写一个从URL提取的正则表达式,但是问题是“。”与我们已经知道的不匹配换行符。如何编写正则表达式以匹配和提取pageTitle(。*?),但换行符可能介于 我在用grails。 最佳答案
我仍在学习如何将 API 数据与 react 和 nextjs 一起使用。但是,为什么我的函数只在我编写 {props.props.title} 而不是我期望的 {props.title} 时起作用?
我正在 github 上创建一个库,所以我为此使用了一个 Markdown 文件,其结构如下: # My main title ## My first section ... ## My second
我在某些地方看到,为了从 props 中获取 title 的值,我们使用 {`${props.title} `} 而在其他一些地方,我们使用它 {props.title} 有什么区别? 最佳答案 第一
我想使用 IMG 标签的 TITLE 属性,为图像创建标题: HTML CSS img[title]:after{content:attr(title);} 但是无论是在 IE、Firefox 还是
我是一名优秀的程序员,十分优秀!