【发布时间】:2017-09-04 02:46:56
【问题描述】:
我正在处理一些时间频率分解的脑电图数据,并希望使用 ggplot2 生成一个类似于频谱图的图形。但是,我最终在每个时间点之间都有空白。
Data <- read.csv(url("https://www.dropbox.com/s/al3cygigm86mr3s/Test_Spec_Data.csv?dl=0"))
如果我创建一个普通的 geom_raster,我会在 x 和 y 数据中得到间隙:
ggplot(Data,aes(Times,Frequency)) +
geom_raster(aes(fill = ERSP))
如果我将Frequency 设为一个因子,它会填补y 间隙;但是,沿 x 轴的间隙仍然存在:
ggplot(Data,aes(Times,factor(round(Frequency,digits=1)))) +
geom_raster(aes(fill = ERSP))
我可以通过使Times 成为一个因素来消除差距。
但是,使用这么多数据点管理 scale_x_discrete 很麻烦(注意 x 轴标签)。此外,这些时间数据是连续的,并不是真正的因子。
geom_raster 没有像geom_bar 这样的width 参数,我在geom_raster 文档中看不到任何类似的东西。
有没有办法让Times 保持连续但消除观察之间的差距?
【问题讨论】:
标签: r ggplot2 heatmap geom-raster