R Plotly中的自定义颜色

DLo*_*DLo 7 r plotly r-plotly

我现在是Plotly的初学者,有一个我似乎无法解决的问题.我有我的阴谋堆积条形图,但我不知道如何为每个类别着色.我目前正在使用R.

这是我目前的堆积条形图: 在此输入图像描述

我目前的代码是:

p = plot_ly(x, x = day, y = count, type = "bar", group = status) %>% layout(barmode = "stack", showlegend = T)
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用"color = "参数和标记,但没有正确的颜色我的图形.

mal*_*mal 12

您需要为color参数指定一个因子,然后为参数指定颜色矢量colors.

这是一个简单的解决方案.在绘图之前,请注意数据框上所需的顺序.

require(dplyr)
require(plotly)

set.seed(42)

df <- data.frame(x = rep(LETTERS[1:5], 3), 
                 y = rexp(15, rate = 0.5),
                 z = c(rep("Adam", 5), rep("Arthur", 5), rep("Ford", 5)))
df <- arrange(df, desc(z))

plot_ly(df, 
        x = x, 
        y = y, 
        color = z, 
        colors = c("grey50", "blue", "red"), 
        type = "bar") %>% 
    layout(barmode = "stack")
Run Code Online (Sandbox Code Playgroud)

数据框的排序很奇怪.我本以为plot_ly会使用级别的顺序,但事实并非如此.

编辑:此示例使用plotly3.xx如果您使用plotly4.xx或更高版本,此代码可能无法正常工作.有关详细信息,请参阅此处:https://www.r-bloggers.com/upgrading-to-plotly-4-0-and-above/