r - 我想用 x, y 坐标创建一个 Dataframe 的高分辨率热图。来自足球比赛的数据
问题描述
我跟踪了一场室内足球比赛。每个玩家都有一个 GPS 跟踪器,它每秒生成 20 个 x 坐标值和 20 个 y 坐标值。所以我想做的是一个类似的热图,如下图所示。
你认为最简单和最好的方法是什么?
我已经尝试过使用 MASS 包的方法。
df <- data.frame(x,y)
h2 <- hist2d(df)
h2 <- hist2d(df, nbins=100, col=r)
h2 <- hist2d(df, nbins=100, col=r, FUN=function(x) log(length(x)))
实际输出是一个图,我可以在该图上看到我的球员在哪里以及他更经常在哪个位置上。但对我来说,分辨率太低了,如果我增加 nbin,那么点只会越来越小。对我来说,它应该有点像云。所以我想要的是一个类似的视图,就像我在上面的链接中已经提到的图片一样。
你可以找到我的数据框
https://drive.google.com/open?id=1SA2oT78wFdXmuz2j2UOOyZvzgwYpgXkT
解决方案
我们可以使用hexbin
包对点进行聚类并将它们绘制为热图:
library(hexbin)
library(RColorBrewer)
crbrew <- colorRampPalette(rev(brewer.pal(11,'Spectral')))
hb <- hexbin(df$x,df$y,xbins = 40)
plot(hb, colramp=crbrew)
推荐阅读
- meson-build - 介子:连接两个没有'/'的字符串
- docker - 带有 docker 的烧瓶 reqparser.parse_args 传递省略号对象 - 错误
- javascript - Google oAuth Google 健身
- html - 如何从 HTM 获取输入整数?- Arduino / NodeMCU ESP32
- javascript - 在 Google Maps JavaScript API 上创建雷达地图
- node.js - 如何解决我的 node.js crud 应用程序中的这个参考错误?
- nginx - Nextcloud 在 nginx 代理后面使用 apache2:502 Bad Gateway Error
- reactjs - 打字稿自定义钩子,事件类型问题
- octave - 函数在 Octave 中运行时的全局变量和错误
- django - 如何在项目 django 中将 app rest 导入我的应用程序