【发布时间】:2016-10-16 06:11:23
【问题描述】:
我在使用 viridis 调色板绘制图例颜色时遇到问题:虽然图例标签显示了颜色,但未显示颜色。
我在 Ubuntu 下使用 Shiny Server v1.4.2.786 和 Node.js v0.10.40(它不显示 viridis 颜色)和在 MacOS 下(它正确)测试了相同的代码。
Ubuntu R 会话的详细信息:
R version 3.3.1 (2016-06-21)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 15.10
leaflet_1.0.1 shiny_0.13.2 viridis_0.3.4
这是不显示颜色的图例
leaflet() %>% addTiles() %>% addLegend(
position = 'bottomright',
colors = viridis(8),
labels = viridis(8), opacity = 1)
虽然这也适用于 Ubuntu 机器
leaflet() %>% addTiles() %>% addLegend(
position = 'bottomright',
colors = rgb(t(col2rgb(palette())) / 255),
labels = palette(), opacity = 1)
这似乎确实是 viridis 调色板的颜色代码有问题(我尝试将它们复制/粘贴到字符向量中)。
一个工作示例
library(shiny)
library(leaflet)
library(viridis)
r_colors <- rgb(t(col2rgb(colors()) / 255))
names(r_colors) <- colors()
ui <- fluidPage(
leafletOutput("mymap")
)
server <- function(input, output, session) {
output$mymap <- renderLeaflet({
leaflet() %>% addTiles() %>% addLegend(
position = 'bottomright',
colors = viridis(8),
labels = viridis(8), opacity = 1)
})
}
shinyApp(ui, server)
【问题讨论】:
标签: r ubuntu shiny leaflet viridis