- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在我的 facet wrap 的标签中创建两种不同大小的文本。
例如:
test <- read.csv(paste0(path, "Costello Artvgl2 for Stack.csv"), sep = ";", dec = ",", header = T)
str(test)
test$Wert <- factor(test$Wert, levels = c("one","two","three","four","five","six"))
test$Sampling.site <- factor(test$Sampling.site, levels = c("Species X Area T","Species Y Area T","Species X Area A","Species Y Area B","Species X Area B","Species Y Area C"))
levels(test$Sampling.site) <- c("Species X\nTotal catch (n=133)", "Species Y\nTotal catch (n=185)", "Species X\nSampling area A (n=57)", "Species Y\nSampling area B (n=122)",
"Species X\nSampling area B (n=76)", "Species Y\nSampling area C (n=63)")
theme_new <- function(base_size = 12, base_family = base_family){
theme_bw(base_size = base_size) %+replace%
theme(
axis.text.x = element_text(size = 8 ),
axis.text.y = element_text(size = 8 ),
axis.title.x = element_text(size = 12, vjust = 0.01),
axis.title.y = element_text(size = 12, vjust = 0.9, angle = 90),
plot.title = element_text(size = 10, face = "bold"),
legend.key= element_rect(colour= NA, fill =NA, size = 0.5),
legend.key.size = unit(1, "lines"),
legend.text = element_text(size = 8),
legend.title = element_blank(),
strip.background = element_rect(fill = NA, colour = NA),
strip.text = element_text(size = 8, face = "bold",hjust = 0.5, vjust = 0.9),
panel.background = element_rect(fill = "white"),
panel.border = element_rect(fill = NA, colour="black"),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.margin = unit(1, "lines")
)
}
ggplot(test, aes(Fi, Pi),group=Wert)+
geom_point(aes(colour = factor(Wert),shape = factor(Wert)),size=3) +
scale_shape_manual(values=c(20,18,19,15,16,17))+
scale_x_continuous(limits=c(0, 1),breaks=c(0,0.2,0.4,0.6,0.8,1.0))+
scale_colour_brewer(type = "qual", palette = "Paired")+
scale_y_continuous(limits=c(0, 100),breaks=c(0,20,40,60,80,100))+
labs(x = "Frequency of occurrence", y = "Prey-specific abundance [%]")+
facet_wrap(~Sampling.site,scales = "free",ncol = 2) +
theme_new()
最佳答案
下面的解决方案是一个技巧,因为它使用上标(或下标)来为分面标签的第二行获得较小的字体大小。我不确定如何更好地控制标签大小而不诉诸于直接操作 strip ,尽管可能有一种方法可以编写 labeller
功能来做到这一点。
我们将使用内置的 mtcars
示例的数据框。首先,我们将添加将用于刻面和标记的列。我们将通过 cyl
分面,但我们希望标签的第一行显示该方面的柱面数,第二行显示该方面的数据点数。为此,我们将在 mtcars
中创建两个新列。 ,称为 Label1
和 Label2
我们将使用它来创建刻面标签的每一行。我们将通过这两列来获取我们想要的图表中的标签。 ( Label3
类似于 Label2
,但使用下标而不是上标;这仅在您想更改从第二行底部到绘图面板顶部的距离时才重要。)Label1
和 Label2
是文本字符串,但它们是表达式的形式,因此我们可以使用 label_parsed
在我们创建绘图时获得更小的下标文本。
library(ggplot2)
library(dplyr)
library(grid)
mtcars.new = mtcars %>% group_by(cyl) %>%
summarise(Label1=paste0("bold(Cylinders:~", unique(cyl),")"),
Label2=paste0("bold(NULL[Count:~", length(cyl),"])"),
Label3=paste0("bold(NULL^{Count:~", length(cyl),"})")) %>%
full_join(mtcars)
Label1
和
Label2
给我们两行。因为我们为
Label2
创建了一个下标表达式,当我们使用
label_parsed
时,它会以较小的字体呈现标记方面。我更喜欢
Label2
相对于
Label1
大一点,但是没有办法用这个(hacky)方法来控制它。另外,虽然
element_text
有一个
lineheight
争论,ggplot 似乎并不尊重它。因此,我手动重置了 strip 标签的行高以减少两个标签之间的空间。
p = ggplot(mtcars.new, aes(wt, mpg)) +
geom_point() +
facet_grid(. ~ Label1 + Label2, labeller=label_parsed) +
theme_bw() +
theme(strip.background=element_rect(fill=NA, color=NA),
strip.text=element_text(size=12))
g <- ggplotGrob(p)
g$heights[[3]] = unit(0.5,"lines")
grid.draw(g)
关于r - 如何在ggplot facet wrap标签中使用不同的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36334486/
我创建了一个包含社交图标的列表。这些图标应该环绕在小屏幕上。 我使用 flex-wrap: wrap; 它在 Firefox 和 Chrome 中完美运行: 但是 Internet Explorer
我很惊讶地发现我的 white-space: pre-wrap;文本在 > 换行和 "人物。我以为它只会换行,- , 以及一个或多个空格之后。 这是一个fiddle . 它在" 之后换行, 在
我被分配了重新创建以下网站的任务:https://plantanapp.com/learn 我做了一些事情,但是每次我解决一个问题时,都会出现另外两个问题。 我是HTML和CSS的新手,并不真正了解元
我偶然发现了 jQuery 的 wrap() 函数。 当我试图包装两个 div 标签时,它们之间有一些文本,而不是两个 div 之间没有文本时,它的行为不知何故不同。 j查询: var wrapper
我正在尝试在 w3c css 验证器上验证一个 css 文件。当它被测试时,它返回一个错误,指出 “属性 flex-wrap- 不存在:wrap”。这是我 css 验证器认为错误的部分。 .row {
这个问题在这里已经有了答案: Flex items create space between them when they wrap [duplicate] (1 个回答) 关闭 6 年前。 我正在
我正在制作一个网页,其中的标题有一个主要主题和一个描述符,每个都包含在标签中。 我已经查找了 标签,它似乎只在你有长字符串时才有效没有空格。但是我在文本中断断续续地有空格。 我需要的是我可以在两个元
我听到很多关于 wrap 面板加载速度较慢的消息,因此我们需要一个虚拟化面板。 有人可以给我一个小的环绕面板示例,它可以证明加载速度较慢等它需要一个虚拟面板。 我设置了一个环绕面板作为列表框的面板控件
我需要用 sinon 多次包装一个方法,以便能够根据参数返回不同的对象。我该怎么做? 我要测试的 Controller 看起来像这样: const servicePackagesOfferingRep
我在运行测试时收到了上述错误消息。下面是我的代码(我正在使用 Backbone JS 和 Jasmine 进行测试)。有谁知道为什么会这样? $(function() { describe("Ca
问题是关于.text-wrapper,它有display:flex; flex-wrap:wrap 应用于它。使用 flex-wrap:wrap 的原因是,否则 .text-wrapper 和 .ta
我有三个带有 Bootstrap 3 的 DIV 容器,其中前两个在第一行,第三个在下一行,直到浏览器宽度直到 991 px。高于 992 px,所有三个容器应排成一行。每行容器的高度应该是最高的 (
(我使用的是 Chrome v.39+) 我正在尝试使用 flex-wrap 属性水平和垂直堆叠子 div,但我看到了一些非常奇怪的行为。例如,如果有 3 个子 div,最后一个的宽度为 100%(使
我必须这样做。适用于宽屏、中屏和小屏 https://pp.vk.me/c629328/v629328337/21bd7/izp9QG8Qcg4.jpg 这是我的代码 .section-items-c
我想要一个每行 3 个元素的容器 flex div,问题是当我添加第四个元素时(它应该自动换行到第二行),而不是它停留在一行并缩小其他元素。我启用了 flex-wrap: wrap; 这是我的代码:
假设我正在使用一个带有 flex-direction:row 和 flex-wrap:wrap 的 flexbox 容器。 根据浏览器窗口的大小,每行中可能有 2、3、4 或更多项。 我想在每隔一行的
我已经添加了所有属性。当我更改浏览器宽度时,它们开始相互粘连,这是因为我有太多图像而无法正常工作? 无法将图像换行: #skills>div { margin-top: 80px; displ
我想制作一个网格,其中每行有两张图片。我正在使用 flex-wrap: wrap;它在 android 4.4+ 上运行良好,但不适用于低于 android 4.4 的系统。我想在不使用 flex-w
我的网站出现异常行为。我最近在网站管理员工具上发现,它发现我网站上的许多网页都出现抓取错误 404。我无法理解这些页面是如何创建的,因为所有 404 页面最后都包含这几个字 wrap-function
我正在使用 MongoDB C# 驱动程序构建一些更新语句。 The C# API在 Builder 命名空间中包括 Wrapped 和“Un-Wrapped”方法。 从表面上看,这些似乎因泛型不同而
我是一名优秀的程序员,十分优秀!