Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在x轴上绘制两行因子的相互作用_R_Ggplot2_Data Visualization - Fatal编程技术网

R 在x轴上绘制两行因子的相互作用

R 在x轴上绘制两行因子的相互作用,r,ggplot2,data-visualization,R,Ggplot2,Data Visualization,我正在绘制2 x 2析因设计的结果(见图)。在x轴上,ggplot显示每个刻度上两个变量的水平(例如,“UK.FEMER”)。我想要的是将轴分为两行(下一行:女性-男性;上一行:英国-美国-英国-美国),如图所示。 这是我的绘图代码: ggplot(data_full, aes(x = interaction(country, gender), y = response, fill = gender)) + geom_violin() + stat_summary() 可以通过使用间距为零

我正在绘制2 x 2析因设计的结果(见图)。在x轴上,ggplot显示每个刻度上两个变量的水平(例如,“UK.FEMER”)。我想要的是将轴分为两行(下一行:女性-男性;上一行:英国-美国-英国-美国),如图所示。

这是我的绘图代码:

ggplot(data_full, aes(x = interaction(country, gender), y = response, fill = gender)) + 
geom_violin() + stat_summary()

可以通过使用间距为零的镶嵌面来解决此问题:

df <- data.frame(x = rnorm(100),
                 catA = rep(c("M", "F"), each = 50),
                 catB = rep(c("A", "B"), 50))

ggplot(df, aes(catA, x)) +
  geom_violin() +
  facet_grid(~ catB, switch = "x") +
  theme(panel.spacing.x = grid::unit(0, "mm"),
        strip.placement = "outside",
        strip.background = element_blank())

df谢谢,看起来很棒!你可能知道如何使A/B标签比F/M标签大吗?