0

我在绘制我所在城市的犯罪密度图时遇到了一些麻烦。stat_density2d()我正在通过函数使用二维核密度估计。无论我更改和/或重新排列什么,我都会不断收到错误消息

提供给连续刻度的离散值

我运行该str函数来检查结构;Lon(gitude) 被解读为一个字符。

OakTownMap +
  stat_density2d(aes(x = lon, y = lat, fill = ..level.. ,alpha=..level..), bins = 10, geom ="polygon", data = Non_Violent_Crime) +
  scale_fill_gradient(low = "black", high = "red")+
  ggtitle("Map of Non-Violent Crime Density in Oakland ")

我真的很迷茫并且有点沮丧,因为我确信这需要非常简单地调整 lon 和 lat 参数的位置或函数的变化(?)。我应该将 lon 从 char 更改为 num 吗?

str 返回图片

4

1 回答 1

0

从屏幕截图看来,您需要将 lon 强制转换为数字向量。Non_Violent_Crimes$lon <- as.numeric(Non_Violent_Crimes$lon)在将其添加到 ggplot 之前尝试一下。或者,当您添加几何图形时,将“x=lon”更改为“x=as.numeric(lon)”。这直接解决了您收到的错误。

于 2019-09-26T18:56:54.290 回答