在与id变量

时间:2018-06-07 13:50:09

标签: r plot rstudio

我需要帮助。这是我的数据库视图:

482 940 914  1  
507 824 1042 2   
514 730 1450 3  
477 595 913  4  

我的目标是在每行的x轴的相同点绘制 例如:
1 (=x)中,我想绘制4829409142 (=x)我想要5078241042

因此每个x轴点的垂直三个点。

1 个答案:

答案 0 :(得分:0)

以可重现的方式共享数据是个好主意 - 我正在使用readClipboard将复制的向量读入R.但无论如何,这是一个快速回答:

x <- as.numeric(unlist(strsplit(readClipboard(), " ")))

这使它成为一个数字向量。我们现在需要根据您提供的描述拆分成组。我正在使用matrix来实现此目标,然后使用data.frame转换为ggplot2以进行绘图:

m <- matrix(x, ncol = 4, byrow = T)
> m
     [,1] [,2] [,3] [,4]
[1,]  482  940  914    1
[2,]  507  824 1042    2
[3,]  514  730 1450    3
[4,]  477  595  913    4

df <- as.data.frame(m)
# Assign names to the data.frame
names(df) <- letters[1:4]

> df
    a   b    c d
1 482 940  914 1
2 507 824 1042 2
3 514 730 1450 3
4 477 595  913 4

获得情节:

library(ggplot2)
ggplot(df, aes(x = d)) + 
    geom_point(aes(y = a), color = "red") + 
    geom_point(aes(y = b), color = "green")  + 
    geom_point(aes(y = c), color = "blue")

<强>输出

enter image description here

您可以使用ggtitlexlab等来更改地图标签并添加图例。

希望这有用!