Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在给定z坐标下绘制热图_R_Data Visualization_Heatmap - Fatal编程技术网

R 在给定z坐标下绘制热图

R 在给定z坐标下绘制热图,r,data-visualization,heatmap,R,Data Visualization,Heatmap,对R来说非常陌生,我正试图为每个屏幕像素的点击量绘制一个“平滑”的热图。数据以以下格式给出: x1, y1, count1 x2, y2, count2 x3, y3, count3 ... 其中countN是用户单击像素的次数xN,yN。 到目前为止,我发现最平滑的事情是使用kde2d进行内核密度估计,但当我像kde2d(data[,1],data[,2])那样使用它时,它会丢弃计数 我如何考虑这个数字?如果所有方法都只需要2个坐标来构建热图,那么如何将3列数组展开为2列数组,以便 1, 1

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

x1, y1, count1
x2, y2, count2
x3, y3, count3
...
其中
countN
是用户单击像素的次数
xN,yN
。 到目前为止,我发现最平滑的事情是使用
kde2d
进行内核密度估计,但当我像
kde2d(data[,1],data[,2])
那样使用它时,它会丢弃
计数

我如何考虑这个数字?如果所有方法都只需要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

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