我有一个包含1000多个数据点的大型数据文件。它是从其他23个.csv文件(称为alltraj)合并而成的大型文件。
它的格式看起来像这样:
其中X1是时间步长,而X和Y是鱼的位置。
我正在尝试使用以下代码制作我的X与Y轨迹频率热图:
“然而,热力图完全未显示出来。看起来像这样: 有人能告诉我我在代码中缺少什么导致它没有显示吗?先谢谢了!编辑:这里是我正在尝试运行的前50行代码(很不幸,比较杂乱):”
似乎我的热力图比例有误。当我使用前10行时,点的大小很合适,但当我使用前20行时,点变小了。当我使用前30行时,点更小了。当我使用50行时,它们几乎无法辨认。如何增加点的大小?
它的格式看起来像这样:
Track X1 X Y
1 Point 1 148.5000 306.83333
2 Point 2 149.8333 306.83333
3 Point 3 151.8333 307.16667
4 Point 4 152.5000 308.16667
5 Point 5 156.1667 309.16667
6 Point 6 159.1667 311.16667
7 Point 7 163.1667 311.83333
8 Point 8 166.5000 313.50000
9 Point 9 170.5000 316.16667
10 Point 10 177.1667 321.50000
其中X1是时间步长,而X和Y是鱼的位置。
我正在尝试使用以下代码制作我的X与Y轨迹频率热图:
(p <- ggplot(alltraj, aes(Y,X)) +
geom_tile(aes(fill = X1), colour = "white") +
scale_fill_gradient(low = "white",high = "steelblue"))
“然而,热力图完全未显示出来。看起来像这样: 有人能告诉我我在代码中缺少什么导致它没有显示吗?先谢谢了!编辑:这里是我正在尝试运行的前50行代码(很不幸,比较杂乱):”
structure(list(Track = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Point", class = "factor"),
X1 = c(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L,
13L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L,
26L, 27L, 28L, 29L, 30L, 31L, 32L, 33L, 34L, 35L, 36L, 37L,
38L, 39L, 40L, 41L, 42L, 43L, 44L, 45L, 46L, 47L, 48L, 49L,
50L, 51L), X = c(148.5, 149.8333333, 151.8333333, 152.5,
156.1666667, 159.1666667, 163.1666667, 166.5, 170.5, 177.1666667,
180.8333333, 183.5, 186.1666667, 191.8333333, 192.8333333,
194.1666667, 195.8333333, 195.5, 196.8333333, 197.1666667,
197.1666667, 197.1666667, 198.5, 198.5, 198.8333333, 198.5,
197.5, 198.8333333, 199.5, 199.5, 199.5, 199.8333333, 200.8333333,
199.8333333, 201.1666667, 201.8333333, 202.5, 203.1666667,
203.1666667, 203.1666667, 204.5, 204.5, 204.5, 204.5, 204.8333333,
203.8333333, 203.8333333, 204.8333333, 206.1666667, 206.5
), Y = c(306.8333333, 306.8333333, 307.1666667, 308.1666667,
309.1666667, 311.1666667, 311.8333333, 313.5, 316.1666667,
321.5, 323.8333333, 325.8333333, 326.1666667, 327.5, 332.1666667,
338.1666667, 341.5, 346.5, 351.1666667, 355.8333333, 360.1666667,
364.1666667, 368.5, 371.8333333, 375.1666667, 376.5, 381.8333333,
385.8333333, 389.5, 392.8333333, 395.8333333, 400.1666667,
405.1666667, 408.8333333, 413.5, 417.1666667, 420.8333333,
424.8333333, 427.8333333, 429.8333333, 433.1666667, 434.5,
435.1666667, 435.1666667, 436.8333333, 436.8333333, 437.5,
438.8333333, 439.8333333, 440.1666667)), row.names = c(NA,
50L), class = "data.frame")
似乎我的热力图比例有误。当我使用前10行时,点的大小很合适,但当我使用前20行时,点变小了。当我使用前30行时,点更小了。当我使用50行时,它们几乎无法辨认。如何增加点的大小?
x>200
。 - KoenVgeom_path
。类似这样的代码:ggplot(alltraj, aes(Y,X)) + geom_path() + geom_point(aes(fill = X1), size = 2, shape = 21)
。您还可以在geom_point
中将size
映射到X1
。 - markus