有没有一种方法可以使图表高亮显示,并且在R中具有选择元素的交互性?
我在这个网页上看到了一个漂亮的图表:我很想知道我们是否可以在R中构建相同的图表,并具有突出显示系列的功能,以及在悬停时选择任何一行 我使用有没有一种方法可以使图表高亮显示,并且在R中具有选择元素的交互性?,r,ggplot2,plotly,r-plotly,gghighlight,R,Ggplot2,Plotly,R Plotly,Gghighlight,我在这个网页上看到了一个漂亮的图表:我很想知道我们是否可以在R中构建相同的图表,并具有突出显示系列的功能,以及在悬停时选择任何一行 我使用gghighlight构建了静态突出显示图表,但这些图表是非交互式的。 Plotly可以帮助交互,但我认为它们不能与gghighlight一起工作 那么,我们如何在图表中结合使用突出显示和交互性,就像顶部共享的链接一样 在R中是否可能达到相同的结果?如果有人能分享一个有帮助的例子或链接,那将非常有帮助 (更新:可能是我可以通过创建因子列而不是使用gghighl
gghighlight
构建了静态突出显示图表,但这些图表是非交互式的。
Plotly
可以帮助交互,但我认为它们不能与gghighlight
一起工作
那么,我们如何在图表中结合使用突出显示和交互性
,就像顶部共享的链接一样
在R中是否可能达到相同的结果?如果有人能分享一个有帮助的例子或链接,那将非常有帮助
(更新:可能是我可以通过创建因子列而不是使用gghighlight
手动高亮显示行,然后将其传递给ggplotly
,但是ggplotly
或其他库可以在悬停时提供类似的结果?)
(注意:不寻找动画。只需突出显示,将鼠标悬停在交互式图表上)
下面是同一张图表在我们头顶上的快照(这张图表也与世界经济论坛上多次分享的图表相似。)
使用
plotly
可以使用highlight()
这是一个稍微修改的示例,来自:
library(plotly)
#加载“txhousing”数据集
数据(txhousing,package=“ggplot2”)
#将'city'声明为SQL'queryby'列
tx%
添加_行(x=~日期,y=~中值)
突出显示(
时间序列,
on=“plotly\u hover”,
selectize=FALSE,
动态=错误,
color=“红色”,
持续=假
)
是否必须使用ggplot?如果没有,highcharter或动态图可能会有用。我过去在动态图方面很成功。此外,您可能希望尝试ggplot+ggvis@J.Doe. 任何与R兼容的都可以。它不一定必须是ggplot
或plotly
或gghighlight
。我看到过highcharter
和dygraphs
的例子,我怀疑它们是否会有帮助,但我现在将详细检查它们ggvis
看起来很有趣,我不知道我们可以在R文档中获得控制wdgets(不确定),而不使用Shining。是的,我认为这会起作用。谢谢@J.Doe。用于共享此链接。我将尝试使用这些例子!!!使用plot\u ly
/ggplotly
也很简单-无需切换库(见下文)。感谢分享@ismirsehegal示例。这将在我需要实现的目标中很好地发挥作用。再次感谢!!
library(plotly)
# load the `txhousing` dataset
data(txhousing, package = "ggplot2")
# declare `city` as the SQL 'query by' column
tx <- highlight_key(txhousing, ~city)
# initiate a plotly object
base <- plot_ly(tx, color = I("black")) %>%
group_by(city)
# create a time series of median house price
time_series <- base %>%
group_by(city) %>%
add_lines(x = ~date, y = ~median)
highlight(
time_series,
on = "plotly_hover",
selectize = FALSE,
dynamic = FALSE,
color = "red",
persistent = FALSE
)