在给定 z 坐标的 R 中绘制热图
Plotting heatmap in R given z coordinate
R 的新手,我正在尝试为每个屏幕像素的点击绘制 "smooth" 热图。数据以下列格式给出:
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
要使用您想使用的 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
。
R 的新手,我正在尝试为每个屏幕像素的点击绘制 "smooth" 热图。数据以下列格式给出:
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
要使用您想使用的 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
。