R Leaflet Legend:colorBin-中断之间的小数位数

时间:2016-04-28 20:47:09

标签: r dictionary formatting leaflet legend

我正在使用Leaflet库在R中创建交互式HTML地图。

图例使用colorBin方法创建6个类别以将数据分解为。

使用min(values)max(values),我已经定义了Amercian社区调查收入数据的特定区域可能存在的可能值的域。但是,从附图中可以看出,断点并不令人满意。

看起来像这样

$8,8820.0- 17,708.5 
$17,708.5- 26,535.0

而不是像这样的理智版本:

$8,8820 - 17,708
$17,809 - 26,536

$8,8820.00 - 17,708.00
$17,809.00 - 26,536.00

如果每个人都有.00,我会接受它,只是一个小数位不是一个小数位!

我找不到一种格式化增量的方法来消除愚蠢的单个小数......

以下是调色板的代码:

pal3<-colorBin(palette="YlOrBr", domain=c(min(plotMerge$incomePerCapita), max(plotMerge$incomePerCapita)), bins = 6, na.color = NULL, pretty=FALSE, alpha = TRUE)

以下是图例的功能:

addLegend(pal = pal3,
        values  = plotMerge$incomePerCapita,
        position = "bottomright",
        title = "Income per Capita<br> in 2014 US Dollars ",
        labFormat = labelFormat(prefix="$"))

以防万一这是问题的一部分,这里是根据收入为多边形指定颜色的属性,它将调色板应用于地图本身。

fillColor = ~pal3(plotMerge$incomePerCapita),

据我所知,大片和相关数据是正确的,所以我并不特别担心地图本身的情节。但我希望Legend看起来很健全,并且没有重叠的小数位。

我已经在这里和其他地方找到了关于传单的R板。我看不出我需要做什么。任何帮助将不胜感激。

Photograph of the legend and map created by the R copy above

1 个答案:

答案 0 :(得分:2)

您可以使用:labelFormat(prefix =“$”,digits = 0))。 以下是leaftet的GitHub代码的链接:github.com/rstudio/leaflet/blob/master/R/legend.R。

以下是具有所有可能选项的函数原型:

labelFormat = function(
      prefix = '', suffix = '', between = ' &ndash; ', digits = 3, big.mark = ',',
      transform = identity)

从这里你可以根据自己的喜好调整格式。