我正在尝试生成一个绘图,其中我想用半透明的灰色显示NA值,并用蓝红色标度绘制一组数值。默认情况下,绘图时用深灰色纯色显示NA,但我认为一定有办法改变这种情况。有办法做到这一点吗?下面是我的代码的模型:
library("plotly")
blue_red <- rev(c("#A50026", "#D73027", "#F46443", "#FDAE61", "#FEE090"
, "#E0F3F8", "#ABD9E9", "#74ADD1", "#4575B4", "#313695"))
mtcars$brand <- sapply(strsplit(rownames(mtcars), " "), "[[", 1)
mtcars[mtcars$brand=="Merc","mpg"] <- NA
fig <- plot_ly(mtcars, x = ~wt, y = ~hp, z = ~qsec,
marker = list(size = 6),
color=~mpg,
colors = blue_red,
type = "scatter3d",
mode = "markers")
fig
我在这里发现了一个有点类似的问题:https://community.plotly.com/t/how-to-change-colors-for-na-values-to-gray-in-a-choropleth-map/15746/3,但我还不能翻译它来解决我的问题。
1条答案
按热度按时间bqf10yzr1#
编辑后才有意义好的,你已经知道了x,y,z坐标的三元组,你想给
mpg
的不同值赋值,你能简单地做下面的事情吗?mtcars[mtcars$brand=="Merc","mpg"] <- your_chosen_value
并将期望颜色分配给该值。如果这会使Map到真实数值的颜色失真,那么使用一个调用绘制所有非“Merc”数据,然后使用第二个调用绘制所有“Merc”数据(使用简单的单值颜色分配而不是
blue_red
矢量)可能会更简单。