使用 plotly
绘图时在 R 中,如何根据值指定颜色和符号?例如使用 mtcars
示例数据集,如果 mtcars$mpg
如何绘制为红色方块是大于还是小于 18?
例如:
library(plotly)
p <- plot_ly(type = "scatter", data = mtcars, x = rownames(mtcars), y = mtcars$mpg,
mode = "markers" )
如何将所有高于 20 的点作为黄色方块?
最佳答案
你可以做这样的事情:
plot_ly(type = "scatter", data = mtcars, x = rownames(mtcars), y = mtcars$mpg,
mode = "markers", symbol = ~mpg > 20, symbols = c(16,15),
color = ~mpg > 20, colors = c("blue", "yellow"))
https://plot.ly/r/line-and-scatter/#mapping-data-to-symbols
是的,这是可能的,我会在
plot_ly()
之外制作您所有的分组和形状/颜色规范。与 cut()
第一的。然后利用文字 I()
plot_ly()
内部的语法引用您的新颜色和形状变量时:data(mtcars)
mtcars$shape <- cut(mtcars$mpg,
breaks = c(0,18, 26, 100),
labels = c("square", "circle", "diamond"))
mtcars$color <- cut(mtcars$mpg,
breaks = c(0,18, 26, 100),
labels = c("red", "yellow", "green"))
plot_ly(type = "scatter", data = mtcars, x = rownames(mtcars), y = mtcars$mpg,
mode = "markers", symbol = ~I(shape), color = ~I(color))
关于r - Plotly:如何根据值指定符号和颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44973625/