首页 > 解决方案 > R plotly orca错误:找不到mapbox访问令牌

问题描述

我阅读教程https://github.com/plotly/orca#installation并在 docker 映像中运行命令:

apt-get install -y curl && \
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - && \
apt-get install -y nodejs libgconf-2-4 libgtk2.0-0 && \
npm install -g electron@1.8.4 orca --unsafe-perm=true --allow-root

操作系统详情:

root@8a17254aeb9a:/# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 9.6 (stretch)
Release:    9.6
Codename:   stretch

但是当我执行时没有任何反应:

root@8a17254aeb9a:/# which orca
/usr/bin/orca
root@8a17254aeb9a:/# orca
root@8a17254aeb9a:/# orca --help
root@8a17254aeb9a:/# electron
root@8a17254aeb9a:/# electron -v

当我执行示例 R 代码时出现错误:

> library(plotly)
> p <- plot_ly(z = ~volcano) %>% add_surface()
> orca(p, "surface-plot.svg")
Error: No mapbox access token found. Obtain a token here
https://www.mapbox.com/help/create-api-access-token/
Once you have a token, assign it to an environment variable 
named 'MAPBOX_TOKEN', for example,
Sys.setenv('MAPBOX_TOKEN' = 'secret token')

我阅读了很多教程和问题,但仍然没有答案。你能帮我吗?

标签: rdockerelectronr-plotlyorca

解决方案


如果您按照安装说明操作并orca指定了命令行,则可以通过分配一个随机数来解决“未找到 mapbox 访问令牌”的问题:

library(plotly)
Sys.setenv(MAPBOX_TOKEN = 11122223333444) # it doesn't matter what number I put!

p <- plot_ly(x = 1:10, y = 1:10, color = 1:10)
orca(p, format = "svg", "plot.svg")

plotly (4.8.0)这适用于使用和存储本地高质量图像orca (1.2.1-1)

PS:如果您安装最新版本的 plotly(我用 测试过4.8.9000),那么它可以在不设置随机 mapbox 令牌的情况下工作。安装最新的情节:devtools::install_github('ropensci/plotly')


推荐阅读