我试图使用plotly
绘制数据,并试图找出多年来如何向图形添加标签。如果将鼠标悬停在该行上,则可以看到该值,但无法找出如何使它可见而不是将其悬停。下面是当我将鼠标悬停在该行上时看到的数据点,如果不将鼠标悬停在该数据点上将无法看到数据值。我有什么办法可以使107.1753k保持不可见?
我尝试按照此处的建议添加标签,但是数据点仍然不可见。 Plot data labels in a line chart
下面是我正在使用的代码,如果您看到的话,我已经添加了标签。
library(plotly)
plot_ly(x = prodn$Year) %>%
add_lines(y = prodn$TotalProduction , color = I("blue"), name = "Prod",label = prodn$TotalProduction) %>%
add_lines(y = prodn$TotalImport, color = I("green"), name = "Import",label = prodn$TotalImport)
根据推荐的样本数据:
Year TotalProduction TotalExport TotalImport
2001 112768.8806 4866.6038 1978.7299
2002 109428.3061 3960.1241 1687.5429
2003 107175.2573 4301.3508 2504.397
2004 111209.887 4799.7895 2728.0004
2005 113149.8099 4994.2211 3046.0349
2006 116274.9659 4964.7269 3624.5976
2007 114663.5345 5916.3103 3634.6847
2008 117180.8669 8151.9115 3420.7679
2009 107492.3392 5909.6951 2263.8515
2010 108436.8148 8171.5675 1935.2687
谢谢您的帮助!
答案 0 :(得分:1)
我认为您需要使用add_text
明确添加一层文本。改编(简化)https://plot.ly/r/text-and-annotations/#styling-text中的示例之一
library(plotly)
data <- mtcars[which(mtcars$am == 1 & mtcars$gear == 4),]
p <- plot_ly(data, x = ~wt, y = ~mpg) %>%
add_markers()
p
我们可以在每个点添加一层所有“值”,尽管值不必是进入点(或线)本身的x或y,如下所示:
p %>% add_text(text = ~disp, textposition = "top right")
您可以覆盖该图层中使用的数据:
p %>% add_text(text = ~disp, textposition = "top right", data = data[1:3,])
(顺便说一句:您可以添加%>% layout(showlegend = FALSE)
来隐藏图例...为了使说明性代码微不足道,我将其保留了下来。)