我有一个csv表,其中有三列我想使用R中的ggplot2绘制为折线图。 x轴上的变量将引用“ DATE_Out”列中的数据,y轴上的两个变量将分别引用“ Percent_In”和“ Percent_Out”列。请注意,“ Percent_In”和“ Percent_Out”完全是两列,而不是具有不同类型要分组的一列数据。 Table Data Example
有人可以给我一些R代码的提示吗?
答案 0 :(得分:0)
library(ggplot2)
library(reshape2)
tbl <- read.csv('table.csv')
tbl$DATE_Out <- as.Date(tbl$DATE_Out, format = '%m/%d/%Y')
tbl <- melt(tbl, id.vars = 'DATE_Out')
plt <- ggplot(data = tbl, aes(x = DATE_Out, y = value))
plt <- plt + geom_path(aes(colour=tbl$variable))
plt + theme_minimal() + theme(legend.title=element_blank())
答案 1 :(得分:0)
tidyr软件包提供了collect函数,旨在完成这种事情。
library(dplyr)
library(tidyr)
View(iris)
iris %>%
gather('Measurment','Value',Sepal.Length,Sepal.Width) %>%
View
我更喜欢tidyr进行重塑,因为对我而言,功能更清晰,功能更通用。例如,不必将所有变量都指定为i.d。融化中的变量,我只需指定希望收集的变量即可。在我的大多数数据集中,这是一种较小,更简洁的编码方式。 (请参阅dplyr :: select的帮助页面,以获取有关选择使用哪些列的更多详细信息)