Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.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 我可以在比例填充蒸馏器中导入调色板吗?_R_Ggplot2_Ggmap - Fatal编程技术网

R 我可以在比例填充蒸馏器中导入调色板吗?

R 我可以在比例填充蒸馏器中导入调色板吗?,r,ggplot2,ggmap,R,Ggplot2,Ggmap,我需要在地图上标出地震烈度。我可以这样做: data = as.data.frame(cbind('MMI'= c(5.705595,7.161231, 5.187135, 6.454477, 6.027840, 4.217181, 4.704672, 5.146932, 5.327897, 7.113057), 'LON'= c(-116.4, -116.5, -116.6, -116.7, -116.8, -116.9, -117.0,-117.1, -117.2, -117.3), 'LA

我需要在地图上标出地震烈度。我可以这样做:

data = as.data.frame(cbind('MMI'= c(5.705595,7.161231, 5.187135, 6.454477, 6.027840, 4.217181, 4.704672, 5.146932, 5.327897, 7.113057), 'LON'= c(-116.4, -116.5, -116.6, -116.7, -116.8, -116.9, -117.0,-117.1, -117.2, -117.3), 'LAT'= c(34.5, 34.5, 34.5, 34.5, 34.5, 34.5, 34.6, 34.6, 34.6, 34.6)))

my_map = get_map(location = c(lon = mean(data$LON), lat = mean(data$LAT)), zoom = 9, maptype = "satellite", source = "google")
ggmap(my_map) + geom_tile(data = data, aes(x=LON, y=LAT, fill = MMI), alpha = 0.5,color = NA) + scale_fill_distiller(palette = "Spectral", limits = c(0, 10), direction =-1)
我的问题是,强度有一个从0到10的定义调色板(我在“颜色”向量中列出了它),但我没有在scale\u fill\u蒸馏器中使用这个调色板。 我还尝试使用scale\u fill\u手册,但它返回了一个错误

colours = c("#FFFFFF", "#9999FF", "#66FFFF", "#66FFCC", "#99FF33", "#FFFF33", "#FFCC33", "#FF9900", "#FF6600", "#FF0000", "#CC0000")

ggmap(my_map) + geom_tile(data = data, aes(x=LON, y=LAT, fill = MMI), alpha = 0.5, color = NA) + scale_fill_manual(values = colours)

有什么建议吗?

就我个人而言,我会使用渐变来定义颜色(和中断)。下面的示例使用默认的分隔符,但您可以使用
参数来控制它们

scale_fill_gradientn(colours = colours)

使用as.factor更改数据以避免为离散比例提供连续值任何特定原因您在
比例填充分配器中使用
限制
参数
?颜色比例从0到10,但我的数据没有,因此,我需要将这些值与正确的颜色相关联。谢谢,它解决了我的问题!我确实使用了:
scale\u fill\u gradientn(颜色=颜色,值=重新缩放(c(0,2,4,5,6,7,8,9,10,10.5)),极限=c(0,10))
scale_fill_gradientn(colours = colours)