自定义颜色条形图 Plotly - R
Custom Colors Bar Graph Plotly - R
我有一个分组条形图,我正在尝试为每个变量或列自定义颜色。我第一次能够做到这一点,但如果我厌倦了第二个,第三个酒吧就会出现。
解决这个问题的最佳方法是什么?
我的代码如下:
SpendOpt <- plot_ly(
x= TV_Attribute_Solver$Channel,
y= TV_Attribute_Solver$Current.spend,
name="Current Spend",
type = "bar",
marker = list(color = "#33aFFF"))
SpendOpt <- add_trace(
SpendOpt,
x=TV_Attribute_Solver$Channel,
y=TV_Attribute_Solver$Optimized.Spend,
name = "Optimized Spend",
type = "bar"
)
数据将是:
> dput(data)
structure(list(Channel = c("13th Street", "7 TWO Sydney", "7MATE Sydney",
"Arena", "ATN-7 Sydney", "BBC Knowledge"), Current.spend = c(2782L,
2075L, 990L, 1194L, 32534L, 356L), Optimized.Spend = c(3060.2,
2282.5, 891, 1313.4, 33410.127, 391.344)), .Names = c("Channel",
"Current.spend", "Optimized.Spend"), class = "data.frame", row.names = c(NA,
-6L))
> data
Channel Current.spend Optimized.Spend
1 13th Street 2782 3060.200
2 7 TWO Sydney 2075 2282.500
3 7MATE Sydney 990 891.000
4 Arena 1194 1313.400
5 ATN-7 Sydney 32534 33410.127
6 BBC Knowledge 356 391.344
还有没有办法在两个分组之间创建更多 space?
谢谢
我想我会继续并添加一个答案。我只是第一次使用 plotly
,所以我不太确定你的代码是如何工作的。就是说,如果我正确理解了这个问题,您需要基于它是 Optimized.spend
还是 Current.spend
的颜色。我只是将你上面所做的扩展到第二部分,我得到了这个:
SpendOpt <- plot_ly(
x= data$Channel,
y= data$Current.spend,
name="Current Spend",
type = "bar",
marker = list(color = "#33aFFF")
)
SpendOpt <- add_trace(
SpendOpt,
x=data$Channel,
y=data$Optimized.Spend,
name = "Optimized Spend",
type = "bar",
marker = list(color = "#afafaf")
)
SpendOpt
我明白了:
如果这是您所期望的,那么您的设置可能存在其他问题。我没有看到提到的 "third bar." 您可能想尝试 ls()
查看您创建的变量或仔细检查其他内容。
如果这不是您想要实现的目标,请随时comment/clarify。这可以追溯到我在评论中的建议,即可重现的示例和视觉效果胜于雄辩:例如,截取您获得的内容的屏幕截图,并在您选择的编辑器中用标签或手绘更正进行标记。
我有一个分组条形图,我正在尝试为每个变量或列自定义颜色。我第一次能够做到这一点,但如果我厌倦了第二个,第三个酒吧就会出现。
解决这个问题的最佳方法是什么? 我的代码如下:
SpendOpt <- plot_ly(
x= TV_Attribute_Solver$Channel,
y= TV_Attribute_Solver$Current.spend,
name="Current Spend",
type = "bar",
marker = list(color = "#33aFFF"))
SpendOpt <- add_trace(
SpendOpt,
x=TV_Attribute_Solver$Channel,
y=TV_Attribute_Solver$Optimized.Spend,
name = "Optimized Spend",
type = "bar"
)
数据将是:
> dput(data)
structure(list(Channel = c("13th Street", "7 TWO Sydney", "7MATE Sydney",
"Arena", "ATN-7 Sydney", "BBC Knowledge"), Current.spend = c(2782L,
2075L, 990L, 1194L, 32534L, 356L), Optimized.Spend = c(3060.2,
2282.5, 891, 1313.4, 33410.127, 391.344)), .Names = c("Channel",
"Current.spend", "Optimized.Spend"), class = "data.frame", row.names = c(NA,
-6L))
> data
Channel Current.spend Optimized.Spend
1 13th Street 2782 3060.200
2 7 TWO Sydney 2075 2282.500
3 7MATE Sydney 990 891.000
4 Arena 1194 1313.400
5 ATN-7 Sydney 32534 33410.127
6 BBC Knowledge 356 391.344
还有没有办法在两个分组之间创建更多 space? 谢谢
我想我会继续并添加一个答案。我只是第一次使用 plotly
,所以我不太确定你的代码是如何工作的。就是说,如果我正确理解了这个问题,您需要基于它是 Optimized.spend
还是 Current.spend
的颜色。我只是将你上面所做的扩展到第二部分,我得到了这个:
SpendOpt <- plot_ly(
x= data$Channel,
y= data$Current.spend,
name="Current Spend",
type = "bar",
marker = list(color = "#33aFFF")
)
SpendOpt <- add_trace(
SpendOpt,
x=data$Channel,
y=data$Optimized.Spend,
name = "Optimized Spend",
type = "bar",
marker = list(color = "#afafaf")
)
SpendOpt
我明白了:
如果这是您所期望的,那么您的设置可能存在其他问题。我没有看到提到的 "third bar." 您可能想尝试 ls()
查看您创建的变量或仔细检查其他内容。
如果这不是您想要实现的目标,请随时comment/clarify。这可以追溯到我在评论中的建议,即可重现的示例和视觉效果胜于雄辩:例如,截取您获得的内容的屏幕截图,并在您选择的编辑器中用标签或手绘更正进行标记。