Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.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 如何从ggplot2的热图中排除异常值?_R_Ggplot2_Visualization_Heatmap_Ggmap - Fatal编程技术网

R 如何从ggplot2的热图中排除异常值?

R 如何从ggplot2的热图中排除异常值?,r,ggplot2,visualization,heatmap,ggmap,R,Ggplot2,Visualization,Heatmap,Ggmap,嗨, 我试图在地图上画出每平方米的平均转换率。这很有效。有问题的是,只有很少记录的正方形经常达到接近0或1的极值。这使得情节很难理解。有没有办法排除未达到特定记录计数的方块?或设置颜色范围,例如0.3-0.7? 代码: library(ggplot2) library(ggmap) manila_map <- get_map("Manila,Philippines", zoom=11) map <- ggmap(manila_map) map + stat_summary_2d(

嗨, 我试图在地图上画出每平方米的平均转换率。这很有效。有问题的是,只有很少记录的正方形经常达到接近0或1的极值。这使得情节很难理解。有没有办法排除未达到特定记录计数的方块?或设置颜色范围,例如0.3-0.7?

代码:

library(ggplot2)
library(ggmap)
manila_map <- get_map("Manila,Philippines", zoom=11)

map <- ggmap(manila_map)
map + stat_summary_2d(
   geom = "tile", 
   data = data,
   fun = "mean",
   binwidth = 0.02,
   aes(x = lon, y = lat, z = requested),
   alpha = 0.4
) +
scale_fill_gradient2(low = "red", mid = "yellow", high = "#007f00", midpoint=0.5)
库(ggplot2)
图书馆(ggmap)

马尼拉映射首先,将数据集中的异常值更改为
NA

data$requested <- ifelse(data$requested <= 0.7 & data$requested >= 0.3, 
                         data$requested, NA)

您有SO用户的示例数据吗?如果是这样的话,你能上传吗?很好的解决方法@Jan Boyer。问题是,如果数据已经有NAs,那么异常值将与缺失值混淆
scale_fill_gradient2(low = "red", mid = "yellow", high = "#007f00", midpoint=0.5, 
                     na.value = "grey50")