R 共X轴可视化

R 共X轴可视化,r,ggplot2,visualization,axes,multiple-axes,R,Ggplot2,Visualization,Axes,Multiple Axes,假设我有以下数据集: a b a_lag b_lag 10 30 0 0 12 25 1 0 20 55 2 0 16 37 1 1 24 60 2 1 19 50 2 2 我希望在同一个图上分别绘制A轴和B轴上的A轴和B轴(每个轴的颜色不同)。如果我们只有一个x轴(上例中的滞后),我发现ggplot非常简单,A

假设我有以下数据集:

a   b   a_lag  b_lag   
10  30  0       0      
12  25  1       0      
20  55  2       0      
16  37  1       1     
24  60  2       1      
19  50  2       2       

我希望在同一个图上分别绘制A轴和B轴上的A轴和B轴(每个轴的颜色不同)。如果我们只有一个x轴(上例中的滞后),我发现ggplot非常简单,A轴和B轴都有相同的x轴(上例中的滞后)。然而,A轴和B轴上分别存在不同的滞后。但是对于整数0、1和2,滞后非常相似。有人能告诉我如何在Rstudio上绘制A和B与“常见滞后”-0、1和2的对比图吗?

第一步是将数据导入,以便它与使用
ggplot2
进行打印很好地配合使用。最后,您似乎只需要针对单个“公共滞后”轴绘制A和B值(分别在
A
B
列中)。因此,您可以意识到数据集实际上是由一个数据帧组成的,在这个数据帧中,您的两个系列“a”和“B”的x和y列的名称不同。将两个数据集分离出来,重新标记列,然后重新组合,这将是最简单的方法。我将使用
dplyr
tidyr
来实现这一点,但是有一些软件包可以实现类似的功能

(注意:假设您的数据帧=
df

库(dplyr)
图书馆(tidyr)
图书馆(GG2)
#把数据分开
df_a%选择(a,a_滞后)
df_b%选择(b,b_滞后)
#重命名列以对应于y轴和x轴

姓名(df_a)非常感谢。对不起,我没有弄清楚我想要的是什么样的阴谋。但这正是我想要的。在查看您的答案之前,我觉得我必须将其作为一个因素或分组使用进行组织。但你的答案更直观。非常感谢你。
library(dplyr)
library(tidyr)
library(ggplot2)

# separate out the data
df_a <- df %>% select(a, a_lag)
df_b <- df %>% select(b, b_lag)

# rename the columns to correspond to y and x axis
names(df_a) <- c('value', 'lag')
names(df_b) <- c('value', 'lag')

# include a new column to identify the series for the data
df_a$series <- 'A'
df_b$series <- 'B'

# combine and plot
new_df <- rbind(df_a, df_b)
ggplot(new_df,aes(x=lag, y=value, color=series)) + geom_point(size=2) + theme_bw()