r - R中的剧情:有没有什么设置让图例一开始就不会被选中?
问题描述
如何让生成的图不选择所有的图例? 如下图。
这是我的代码:
p1 <-
iris%>%
group_by(Species)%>%
plot_ly(x=~Sepal.Length, color= ~Species, legendgroup=~Species)%>%
add_markers(y= ~Sepal.Width)
谢谢。
解决方案
通过将每条迹线 ( Species
) 分别添加到图中,您可以手动设置每条迹线的可见性。
# divide dataset by group
iris_sub <- iris %>%
group_split(Species)
# create base for plot
p <- plotly::plot_ly(type="scatter",
mode="markers")
# add a trace for each group
lapply(iris_sub, function(f) {
# define visible group (just show virginica)
vis <- ifelse(unique(f[, "Species"]) == "virginica", TRUE, "legendonly")
# add trace to plot
p <<- get("p") %>%
add_trace(p, data = f,
x = ~Sepal.Length,
y = ~Sepal.Width,
color = ~Species,
visible = vis)
})
推荐阅读
- dns - 如何更改域 CloudFlare 的 NS 服务器?
- android - Firebase 电话号码身份验证失败
- azure - 每月数百万个数据集的 Azure 服务
- sql - SQL Server - 执行时“主要”附近的语法错误
- javascript - Slack OAuth 设置步骤 1 - 使用 Postman 进行测试 - 错误:无效的 client_id 参数
- python - 是否可以有一个一致的 setup.py 文件来反映对依赖项的本地更改?
- python - 如何根据二进制掩码删除numpy中的列?
- java - 在 Java 中打印前 1000 个 Unicode 字符
- python - Orator ORM模型创建方法无效SQL
- java - 如何在 IntelliJ 中配置默认项目构建