- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个具有翻转坐标的多面图,其中一个且仅一个轴允许针对每个面而变化:
require(ggplot2)
p <- qplot(displ, hwy, data = mpg)
p + facet_wrap(~ cyl, scales = "free_y") + coord_flip()
这个图对我来说并不令人满意,因为每个图都重复了错误的刻度线和刻度标签。我希望每个水平轴上都有刻度线,而不是每个垂直轴上的刻度线。
这是意外的行为,因为该图暗示顶部面板的水平轴刻度线与底部面板的水平轴刻度线相同,但事实并非如此。要查看此运行:
p <- qplot(displ, hwy, data = mpg)
p + facet_wrap(~ cyl, scales = "fixed") + coord_flip()
所以我的问题是:有没有办法删除右侧面的垂直轴刻度线并在顶部面添加水平轴刻度线和标签?
正如 Paul 在下面深刻指出的那样,我给出的示例可以通过在 qplot() 中交换 x 和 y 并避免使用 coord_flip() 来解决,但这并不适用于所有几何图形,例如,如果我想要一个水平多面条我可以运行带有自由水平轴的绘图:
c <- ggplot(diamonds, aes(clarity, fill=cut)) + geom_bar()
c + facet_wrap(~cut, scales = "free_y") + coord_flip()
这些面具有可变的水平轴,但具有重复的垂直轴刻度线,而不是重复的水平轴刻度线。我认为保罗的技巧在这里不起作用,因为与散点图不同,条形图不是旋转对称的。
我非常有兴趣听到任何部分或完整的解决方案。
最佳答案
将coord_flip
与facet_wrap
结合使用就是问题所在。首先,将某个轴定义为自由轴(x
轴),然后交换该轴,使 y
轴自由。目前,这在 ggplot2 中还没有很好地重现。
在您的第一个示例中,我建议不要使用coord_flip
,而只是在对qplot
的调用中交换变量,并使用free_x
>:
p <- qplot(hwy, displ, data = mpg)
p + facet_wrap(~ cyl, scales = "free_x")
关于r - 在 ggplot2 中使用 coord_flip() 和 facet_wrap(scales = "free_y") 似乎会给出意外的面轴刻度线和刻度标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12560858/
我创建了一个组条形图(img 1)并使用了 coord_flip()移动 将条形分组到 y 轴。我注意到 coord_flip()还会重新排列每个条在组中的显示方式。 例如。在 img 1 中,条形图
我一直有一个烦人的问题,我无法找到具体的解决方案。我正在尝试创建一个水平分组条形图;我想要的只是采用标准的垂直条形图并将其向右旋转 90 度。当我使用 coord_flip 时,它会将绘图向右旋转,但
我想要一个箱线图,在我的直方图下方显示相同的分布。 下面的代码几乎可以工作,但是 coord_flip()正在应用于所有层,而不仅仅是 geom_boxplot层。 plot1<-ggplot(new
来自 dbv 的数据示例: gender Sektion 1 m 5 2 m 5 3 w 3B 4 w 3B 5
翻转坐标后,如何减少窄条和面板边框之间的空间?使用数据框 df 和 ggplot命令,底部栏和刻度线之间有很多空白空间(同样在“供应商”栏上方有一个宽阔的空间)。 df <- data.frame(x
我收到一个错误,似乎是通过使用 annotation_logticks() 组合起来的和 coord_flip()在同一个情节上。例如: ggplot(mtcars, aes(x=mpg, y=dis
我有一个包装 ggplot 图的简单函数: library(ggplot2) myGraph % return() } 而且我想向该函数添加一个参数,以便我可以翻转或不翻转轴。一个 bool
以下是关于体育促进干预措施有效性的假设荟萃分析的一些示例数据,我想为其创建森林图: example.df = data.frame(Author = c("McAuliffe et al.", "Pa
我正在努力在我用 R 中的 ggplot2 制作的图表中获得正确的变量排序。 假设我有一个数据框,例如: set.seed(1234) my_df with(df2, order(vartype, v
美好的一天 在不使用 coord_flip() 的情况下,有没有办法通过在 aes() 中交换位置 x 和 y 来绘制翻转的正态分布?我试过如下。 df3 <- data.frame(x=seq(-6
我正在尝试生成一个图表,其中包含来自多个国家/地区的相同回归的估计值和置信区间。我使用 dplyr 运行回归的 group_by(country) ,然后我用 broom 将所有结果聚合到一个数据框中
我想用 gganim 制作一个动画条形图包裹。条形图的坐标应该通过 coord_flip 翻转(即水平条)和 x 轴应根据条的长度通过 view_follow 变得灵活. 考虑以下示例数据: # Cr
我有一些来自 ggplot 的奇怪行为。这是一个MWE: the_data <- data.frame( myx <- 1:10, lower <- rnorm(10,-5,1), me
我正在尝试创建一个具有翻转坐标的多面图,其中一个且仅一个轴允许针对每个面而变化: require(ggplot2) p : p <- qplot(hwy, displ, data = mpg) p +
我试图将 x 轴移动到顶部:scale_x_discrete (position = "top") 但它指示错误。有人帮帮我吗? require(ggplot2) a <- c("ENE","FEB"
曾经完美运行的旧代码不再适用于 0.9.3。该问题与刻面、自由尺度和坐标翻转的使用有关。 这是一种重现的方法: 数据集:d.csv: "Priority","Owner","Project" "Med
我是一名优秀的程序员,十分优秀!