首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何操作facet_grid plots的条形文本?

如何操作facet_grid plots的条形文本?
EN

Stack Overflow用户
提问于 2010-05-02 02:23:40
回答 2查看 68.1K关注 0票数 109

我想知道如何在分面图中操纵条带文本的大小。我的问题类似于a question on plot titles,但我特别关注的不是绘图标题,而是出现在facet title (strip_h)中的文本。

例如,考虑mpg数据集。

    library(ggplot2) 
    qplot(hwy, cty, data = mpg) + facet_grid( . ~ manufacturer)

生成的output会生成一些不适合该条形图的facet标题。

我在想,一定有一种方法可以使用grid来处理带状文本。但我仍然是一个新手,从Hadley's bookgrid附录中不能确定如何准确地做到这一点。此外,我担心如果我做错了,它会弄坏我的洗衣机,因为我相信所有的技术都是通过原力连接的:-(

在此之前,非常感谢您。

EN

回答 2

Stack Overflow用户

发布于 2012-10-19 16:35:50

如今,optstheme_text的用法似乎已被弃用。R建议使用themeelement_text。答案可以在这里找到解决方案:http://wiki.stdout.org/rcookbook/Graphs/Facets%20%28ggplot2%29/#modifying-facet-label-text

qplot(hwy, cty, data = mpg) + 
      facet_grid(. ~ manufacturer) + 
      theme(strip.text.x = element_text(size = 8, colour = "red", angle = 90))
票数 36
EN

Stack Overflow用户

发布于 2013-04-11 21:50:21

我猜在mpg的例子中,改变旋转角度和字体大小是很好的,但在许多情况下,你可能会发现自己的变量有相当长的标签,尝试读取旋转过长的标签(字面上)可能会成为一件令人头疼的事情。

因此,除了更改角度和大小之外(或补充),每当定义facet_grid的因子能够以有意义的方式拆分时,我通常会重新格式化它们的标签。

通常情况下,如果我有一个包含字符串的dataset$variable,如下所示

c("median_something", "aggregated_average_x","error","something_else")

我就是这么做的:

reformat <– function(x,lab="\n"){ sapply(x, function(c){ paste(unlist(strsplit(as.character(c) , split="_")),collapse=lab) }) }

也许对reformat有更好的定义,但至少这个定义可以很好地工作。

dataset$variable <- factor(dataset$variable, labels=reformat(dataset$variable, lab='\n')

在刻面上,所有的标签都是非常易读的:

ggplot(data=dataset, aes(x,y)) + geom_point() + facet_grid(. ~ variable)
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2751065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档