R Легенда на листовка: colorBin - премахване на десетични знаци между паузите

Създавам интерактивна HTML карта в R, използвайки библиотеката Leaflet.

Легендата използва метода colorBin за създаване на 6 категории, в които да се разделят данните.

Използвайки min(values) и max(values), дефинирах домейна на възможните стойности, в които може да попадне конкретен тракт от данните за доходите от Amercian Community Survey. Точките на прекъсване обаче не са приятни, както можете да видите от приложеното изображение.

Изглежда така

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

вместо разумна версия като тази:

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

or

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

Бих го приел, ако трябваше да има 0,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),

доколкото мога да преценя, трактатите и свързаните с тях данни са правилни, така че не съм особено притеснен за начертаването на самата карта. Но искам Легендата да изглежда разумна и да няма нито един десетичен знак, който се припокрива.

Прегледах таблата R, като прочетох всичко за листовката тук и другаде. Не виждам какво трябва да направя. Всяка помощ ще бъде високо оценена.

Снимка на легендата и картата, създадени от R копието по-горе


person sconfluentus    schedule 28.04.2016    source източник
comment
Може да можете да използвате: labelFormat(prefix=$, digits=0)). Ето връзката към кода на GitHub за leaftet: github.com/rstudio /leaflet/blob/master/R/legend.R. От това трябва да можете да промените формата по ваш вкус.   -  person Dave2e    schedule 29.04.2016
comment
Dave2e ти си моят герой! БЛАГОДАРЯ ВИ... Това сработи перфектно. Ако имате нужда от одобрение, направете го отговор вместо коментар и аз ще ви дам зелената отметка за потвърждение!   -  person sconfluentus    schedule 02.05.2016


Отговори (1)


Може да можете да използвате: labelFormat(prefix="$", digits=0)). Ето връзката към кода на GitHub за leaftet: github.com/rstudio/leaflet/blob/master/R/legend.R.

Ето прототипа на функцията с всички възможни опции:

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

От това трябва да можете да промените формата по ваш вкус.

person Dave2e    schedule 02.05.2016