我试图生成存储在数据框中的实验室网格的散点图。
我使用的数据如下所示:
> print(df)
day val1 val2 val3
1 1 9.26875 11.34072 11.26673
2 2 48.47862 48.35817 48.68534
3 3 140.17682 141.09102 142.95175
4 4 313.43012 313.69816 312.97293
每一行显示每天进行的测量。
我想制作一个能够表明这一点的散点图 最终结果看起来像like this。
我已经找到了无数关于如何制作散点图treating each column as a different object的例子,这是不我想要做的事情。
我能找到的最接近的是this question,但说明并不清楚,我不明白为什么需要包reshape2
和ggplot2
任务。
任何人都可以给我任何指示吗?
最好的问候。
答案 0 :(得分:0)
虽然不是必需的,但库提供的某些功能在基础R中不一定存在或很容易找到。例如,您可以使用数据框执行简单的散点图:
df$day <- as.factor(df$day)
df <- melt(df)
plot(as.numeric(df$day),df$value)
正如您所看到的,这个通用图可以通过融合来实现,以便将数据转换为长格式,其中1列为您的因子,1列为您的值。但是,通过几行ggplot
,您可以创建一个简单的图表,只需要额外的努力就可以提供更多信息。
library(ggplot2)
ggplot(df, aes(x=day,y=value, colour = variable)) + geom_point(position = position_dodge(width = .3))
您可以详细了解ggplot2 here