1

我有一个大的data.frame(ncols = 500,nrows = 14000)。它看起来像这样:

          Sample1   Sample2   Sample3    .....    
Gene1       22         0        0.11     .....    
Gene2      0.112      0.1       0.4      .....     
Gene3      0.45        0        0.19     .....    
.....      .....     .....     .....     .....    

我想在不应用任何统计数据的情况下绘制如此大量的数据,以便清楚(只需使用颜色或其他工具)例如数字(大小)方面的差异。样本 1 的 Gene1 和 Gene2 之间,依此类推。除了热图还有什么想法吗?

4

2 回答 2

1

geom_raster从 ggplot2使用怎么样?

#  Make up some data
set.seed(1)
df <- data.frame( matrix( runif(25) , 5 , 5 ) )
#         X1        X2         X3         X4         X5
#1 0.5316382 0.4360309 0.09576886 0.56497254 0.43930824
#2 0.2383700 0.1531009 0.71377161 0.39367645 0.42211072
#3 0.5009796 0.6549886 0.05996069 0.08236798 0.08574704
#4 0.1171437 0.8765644 0.29892712 0.06071803 0.78011966
#5 0.5066046 0.5486397 0.34770099 0.07785835 0.09659246

#  Abs difference between columns of dataframe
out <- data.frame( t( apply( df , 1 , function(x) abs( diff( x ) ) ) ) )

#  Plot using geom_raster    
require( ggplot2 )
require( reshape2 )
out.melt <- melt( out )
out.melt$y <- rep( 1:10,times = 9 )
p <- ggplot( out.melt , aes( variable , y , fill = value ) ) + geom_raster()
p

在此处输入图像描述

于 2013-08-28T13:41:12.447 回答
1

如果问题是关于真正庞大的数据(例如,当数据点的数量远远大于屏幕上的像素数量时),Bin-summarise-smooth 怎么样:一个用于可视化大数据的框架,如此处所述http ://vita.had.co.nz/papers/bigvis.html

@Article{bigvis,
  title = {Bin-summarise-smooth: a framework for visualising large data},
  author = {Hadley Wickham},
  year = {Submitted},
  journal = {Infovis 2013},
}

另请参阅(例如,第 5 张幻灯片)此演示文稿 http://files.meetup.com/2906882/visualising_big_data_in_R.pdf

于 2013-08-28T14:32:59.703 回答