从一组坐标绘制位置的频率热图

Plot frequency heatmap of positions from set of coordinates

我有一堆数据如下所示:

  Track X1        X        Y
1 Point  1 147.8333 258.5000
2 Point  2 148.5000 258.8333
3 Point  3 151.1667 260.8333
4 Point  4 154.5000 264.5000
5 Point  5 158.1667 266.5000
6 Point  6 161.5000 269.5000

我想绘制一个 ,所以一个漂亮的图表标记为 xy 作为位置坐标,gradient color fill 表示频率一个特定的点出现了,比例指示器显示了颜色的含义。我正在寻找一种简单的 gradient fill 单色低和高。

我已经做了一段时间了,但我认为第一步应该是构建另一个数据集,其中包含位置和显示频率的新列?但我不是 100% 确定如何构建它。

到目前为止,我的尝试类似于:

ggplot(data=all_data, aes(x=X, y=Y)) + geom_tile(aes(fill=all_data$X)) + 
  scale_fill_gradient2(low="green", high="blue") + coord_equal()

正如 Jon Spring 所建议的,以下代码显示了这样一个图表:

all_data <- read.table(text = "
Track X1        X        Y
1 Point  1 147.8333 258.5000
2 Point  2 148.5000 258.8333
3 Point  3 151.1667 260.8333
4 Point  4 154.5000 264.5000
5 Point  5 158.1667 266.5000
6 Point  6 161.5000 269.5000
", header = T, row.names = NULL)

ggplot(data=all_data, aes(x=X, y=Y)) + geom_bin2d()