ggplotly 工具提示反应不稳定
ggplotly tooltip reacts erratically
我有这个 ggplotly
NBA 球场的对象,显示每个球员的投篮次数。如您所见,当我将鼠标悬停在球场的每个区域上时,我看到工具提示的行为非常不可预测。我觉得它是因为球场是由 geom_polygon
和 geom_path
产生的。代码见下方:
数据(gg_lineup_fga
):http://www.filedropper.com/gglineupfga
rank_colors <- RColorBrewer::brewer.pal(5, "RdYlBu")
ggplot2::ggplot(data = gg_lineup_fga, ggplot2::aes(x=long,
y=lat,
group = group,
fill = rank,
text = paste0("FGA : ", round(fga, 2)))) +
ggplot2::facet_grid(. ~ player) +
ggplot2::geom_polygon() +
ggplot2::geom_path(color = "black") +
ggplot2::coord_equal() +
ggplot2::scale_fill_manual(values = rank_colors,
limits = 1:5,
name = NULL) +
ggplot2::theme(axis.line=ggplot2::element_blank(),
axis.text.x=ggplot2::element_blank(),
axis.text.y=ggplot2::element_blank(),
axis.ticks=ggplot2::element_blank(),
axis.title.x=ggplot2::element_blank(),
axis.title.y=ggplot2::element_blank(),
panel.background=ggplot2::element_blank(),
panel.border=ggplot2::element_blank(),
panel.grid.major=ggplot2::element_blank(),
panel.grid.minor=ggplot2::element_blank(),
strip.text = ggplot2::element_text(size = 16),
strip.background = ggplot2::element_blank(),
legend.position = "none",
# legend.margin = ggplot2::margin(0.1, 0.1, 0.1, 0, "npc"),
plot.margin = ggplot2::unit(c(0, 0, 0, 0), "cm"),
panel.spacing.y = ggplot2::unit(0, "cm"),
text=element_text(size=16, family="Avenir"))
为了解决这个问题,我可以去掉geom_path
,但是那样会抹掉球场区域的黑线边界。我想知道 plotly 中是否有一个参数阻止工具提示与 geom_path
交互(仅与 geom_polygon
交互)
删除 geom_path
并向 geom_polygon
添加颜色以着色边界即 geom_polygon(color ='black')
我有这个 ggplotly
NBA 球场的对象,显示每个球员的投篮次数。如您所见,当我将鼠标悬停在球场的每个区域上时,我看到工具提示的行为非常不可预测。我觉得它是因为球场是由 geom_polygon
和 geom_path
产生的。代码见下方:
数据(gg_lineup_fga
):http://www.filedropper.com/gglineupfga
rank_colors <- RColorBrewer::brewer.pal(5, "RdYlBu")
ggplot2::ggplot(data = gg_lineup_fga, ggplot2::aes(x=long,
y=lat,
group = group,
fill = rank,
text = paste0("FGA : ", round(fga, 2)))) +
ggplot2::facet_grid(. ~ player) +
ggplot2::geom_polygon() +
ggplot2::geom_path(color = "black") +
ggplot2::coord_equal() +
ggplot2::scale_fill_manual(values = rank_colors,
limits = 1:5,
name = NULL) +
ggplot2::theme(axis.line=ggplot2::element_blank(),
axis.text.x=ggplot2::element_blank(),
axis.text.y=ggplot2::element_blank(),
axis.ticks=ggplot2::element_blank(),
axis.title.x=ggplot2::element_blank(),
axis.title.y=ggplot2::element_blank(),
panel.background=ggplot2::element_blank(),
panel.border=ggplot2::element_blank(),
panel.grid.major=ggplot2::element_blank(),
panel.grid.minor=ggplot2::element_blank(),
strip.text = ggplot2::element_text(size = 16),
strip.background = ggplot2::element_blank(),
legend.position = "none",
# legend.margin = ggplot2::margin(0.1, 0.1, 0.1, 0, "npc"),
plot.margin = ggplot2::unit(c(0, 0, 0, 0), "cm"),
panel.spacing.y = ggplot2::unit(0, "cm"),
text=element_text(size=16, family="Avenir"))
为了解决这个问题,我可以去掉geom_path
,但是那样会抹掉球场区域的黑线边界。我想知道 plotly 中是否有一个参数阻止工具提示与 geom_path
交互(仅与 geom_polygon
交互)
删除 geom_path
并向 geom_polygon
添加颜色以着色边界即 geom_polygon(color ='black')