2015-10-05 50 views
0

是R中的初学者,已经经历了一些基本的在线课程和Web材料以发展基本的理解。可悲的是,接下来的问题是一个非常基础的问题,也是R的最强大的功能之一,我无法找到答案。在R中的单个图中绘制可变参数R

问题陈述: -我有一个CSV文件看起来像这样

  day1 day2 day3 day4 day5 day6 ........ day'n' 
Param1 9  8  5  0  0  0    4 
Param2 1  3  4  9  1  0    3 
Param3 0  0  0  1  2  3    9 
Param4 
. 
. 
Param'm' 6  4  0  1  8  3    1 

我想跨越“N”天中绘制一个图所有这些参数的值。

也就是说。 图形的X轴=参数值的范围(以上例中的单元格显示,最大值为10)
图形的Y轴=天数1到'n'。 每个独特参数的图可以通过颜色来区分。

什么都试过这是

a <- read.csv("~sults/200000555087.csv_result.csv") 
    p<-qplot(data=a,x=names(a[,1:m)),y=c(1:n)) 

这我很清楚的知道是不是应该工作,但我能想出

最好有isin't一个有效的标签为qplot因此标记GGPLOT2。

感谢您的期待。

回答

0

你需要“融化”你的情节和不同的颜色组。

可以使用gather函数从tidyr包这样的:

library(dplyr) 
library(tidyr) 

remodeled_data = a %>% 
    add_rownames('Param') %>% 
    gather(Day, Value, -Param) %>% 
    mutate(Day = as.integer(sub('^day', '', Day))) 

ggplot(remodeled_data) + 
    aes(x = Value, y = Day, color = Param) + 
    geom_line() 

重塑表达是这样写的:

  • 首先,对于rownames额外新增一栏,称这是“帕拉姆”。
  • 然后收集所有的列(除Param)到名为Value一个列,并提出了相应的列名到名为Day一个单独的列。
  • 最后,从Day列中解析出日期编号。

然后,数据如下所示:

Param Day Value 
    (chr) (int) (dbl) 
1 Param1  1  9 
2 Param2  1  1 
3 Param3  1  0 
4 Param4  1  6 
5 Param1  2  8 
6 Param2  2  3 
… 
+0

由于一吨,根据你的方向一点点网页查找适合我的需要完美。 – sherinkapotein