【问题标题】:Plotting heatmap in R given z coordinate在给定 z 坐标的 R 中绘制热图
【发布时间】:2015-01-26 13:12:09
【问题描述】:

对 R 来说非常新,我正在尝试为每个屏幕像素的点击量绘制一个“平滑”的热图。数据格式如下:

x1, y1, count1
x2, y2, count2
x3, y3, count3
...

其中countN 是用户点击像素xN, yN 的次数。 到目前为止,我发现的最流畅的方法是使用 kde2d 进行内核密度估计,但是当我像 kde2d(data[,1], data[,2]) 一样使用它时,它会丢弃 count 数字。

我如何考虑这个数字?如果所有方法只需要 2 个坐标来构建热图,我如何将我的 3 列数组展开为 2 列数组,以便

1, 1, 2
2, 3, 1

变成

1, 1
1, 1
2, 3

【问题讨论】:

  • 您可以将该数据转换为矩阵以构建raster 对象,并且有许多选项可用于利用计数(等高线图等)。 This 将是一个很好的入门参考。
  • 一些示例数据可以帮助您获得更多帮助。

标签: r data-visualization heatmap


【解决方案1】:

要使用您要使用的kde2d 计算内核密度,

df = data.frame(x = c(1,2),y = c(3,1),count=c(2,1))
f1=kde2d(x=rep.int(df$x,df$count),
         y=rep.int(df$x,df$count)) # you probably also want to set the parameters h,n, and lims
image(f1)

其他参数见?kde2d

【讨论】:

    猜你喜欢
    • 2016-09-07
    • 2013-10-14
    • 1970-01-01
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 2020-07-01
    • 1970-01-01
    相关资源
    最近更新 更多