我用下面的图创建了一个基本的散点图。问题是,虽然我在hoverinfo中专门设置了文本,但数值要在我希望显示的实际文本(20,56)
之前再显示一次Team Pts:20 Fantasy Pts: 56
。如何删除它们?
pts<-c(10,20,30)
npts<-c(24,56,78)
ex<-data.frame(pts,npts)
library(plotly)
p <- plot_ly(data = ex, x = ~pts, y = ~npts,
marker = list(size = 10,
color = 'white',
line = list(color = 'rgba(152, 0, 0, .8)',
width = 2))) %>%
add_trace(
text = ~paste("Team Pts: ", pts, '</br>Fantasy Pts:', npts),
hoverInfo='text'
)
p
答案 0 :(得分:1)
一种实现方法是通过向hovertemplate
参数中添加变量来将文本添加到每个数据点。
我目前无法测试此方法,但它看起来应该像这样:
add_trace(
x = ~pts,
y = ~npts,
hovertemplate = paste('<i>Team points</i>: %{x}',
'<br><b>Fantasy Pts</b>: %{y}</br>',
)
)
答案 1 :(得分:1)
您只是对参数hoverInfo
进行了拼写错误,该参数应为hoverinfo
,因此您的绘图使用默认的hoverinfo = "all"
。另外,将</br>
替换为<br>
,以在两行上显示悬停文本:
library(plotly)
ex <- data.frame(
pts = c(10, 20, 30),
npts = c(24, 56, 78)
)
plot_ly(data = ex,
type = "scatter",
mode = "markers",
x = ~pts,
y = ~npts,
text = ~paste("Team Pts: ", pts, '<br>Fantasy Pts:', npts),
hoverinfo = "text"
)