格式化悬停数据标签 Plotly R
Posted
技术标签:
【中文标题】格式化悬停数据标签 Plotly R【英文标题】:Format hover data labels Plotly R 【发布时间】:2018-08-30 11:00:17 【问题描述】:我正在尝试格式化当我将鼠标悬停在使用 Plotly 创建的图表的一部分时出现的数据标签。标签当前显示为this。我希望标签只显示利润。
我创建情节的代码是:
output$monthlyProfits <- renderPlotly(
ggplot(profitTemp, aes(x = Date, y = Profit)) + geom_line(aes(text=Profit),
colour = "Blue")
如何格式化数据标签,使其不显示 X 轴而只显示 Y 轴(利润)?我试过aes(text=Profit)
,但X轴仍然显示。
任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:自定义直接在plotly
中制作的绘图更加灵活,但是使用ggplotly
也可以进行请求的操作。下面是一个关于 iris 数据集的例子:
library(plotly)
library(ggplot)
定义悬停信息:
plot_ly(data = iris,
x = ~Sepal.Length,
y = ~Petal.Length,
color = ~Species,
hoverinfo = 'text',
text = ~Species)
在调用 ggplot 时,使用 ggplotly 将文本参数留空:
z <- ggplot(iris, aes(x = Sepal.Length, y = Petal.Length, color = Species))+
geom_point()
并将参数tooltip
设置为ggplotly
:
ggplotly(z, tooltip="Species")
相比:
z <- ggplot(iris, aes(x = Sepal.Length, y = Petal.Length, color = Species))+
geom_point(aes(text = Species))
ggplotly(z)
编辑:自定义文本:
plot_ly(data = iris,
x = ~Sepal.Length,
y = ~Petal.Length,
color = ~Species,
hoverinfo = 'text',
text = ~paste(Species,
'</br></br>', Petal.Length))
【讨论】:
感谢您的回答,帮助很大。如何在数据标签中输入 2 个名称?我试过ggplotly(produceMonthlyPlot, tooltip="QuantitySold", "</b>", "Product")
但它只显示QuantitySold
变量而不是Product
变量。
我不确定如何使用 ggplotly
执行此操作,请检查编辑如何使用 plotly 执行它。【参考方案2】:
关于您在 cmets 中的第二个问题(很抱歉没有发表评论 - 缺乏这样做的声誉):
只需为工具提示属性提供一个向量,例如
ggplotly(produceMonthlyPlot, tooltip=c("QuantitySold","Product"))
通过它,您可以控制应该显示的内容和不应该显示的内容。
【讨论】:
以上是关于格式化悬停数据标签 Plotly R的主要内容,如果未能解决你的问题,请参考以下文章
Plotly:如何在带注释的热图中舍入显示文本但在悬停时保持完整格式?