如何修改R Plotly中Choropleth地图的州边界颜色?
问题:修改Plotly美国州地图边界颜色为黑色
我在R中实现了基于分类变量的离散颜色Choropleth地图,但图表中的州边界显示为蓝色,希望将其改为黑色以提升清晰度。尝试了以下代码但并未生效:
cw_map <- plot_ly( data = df, type = "choropleth", locations = ~ state, locationmode = "USA-states", z = df$test, colorscale=colorScale, colorbar=list(tickvals=1:nfactor, ticktext=names(foo)) ) %>% layout(geo = list(scope = "usa", showsubunits = TRUE, subunitcolor = "black"))
解决方案
问题出在边界颜色的设置位置不对,Plotly的州级choropleth地图边界需要通过marker参数定义,而非layout(geo)中的subunitcolor(该参数多用于显示更细粒度的子单元如县的边界)。
修改后的代码如下:
cw_map <- plot_ly( data = df, type = "choropleth", locations = ~ state, locationmode = "USA-states", z = df$test, colorscale=colorScale, colorbar=list(tickvals=1:nfactor, ticktext=names(foo)), # 添加marker参数设置州边界颜色和粗细 marker = list(line = list(color = "black", width = 1)) ) %>% layout(geo = list(scope = "usa"))
color = "black":将边界设置为黑色width = 1:控制边界线条的粗细,可根据需求调整数值(比如改成1.5会更粗)
内容的提问来源于stack exchange,提问作者Lagrange
相关产品推荐
相关产品推荐

