在plotly中添加add_trace,用于我的特定图形的跟踪

时间:2017-11-02 23:43:19

标签: r plotly

我正在努力使用图书馆在R中创建篮球投篮图,尽管我目前卡住了。作为参考,我正在创建的图形类型在它们完成时有望看起来像这样:

enter image description here

从一个情节的角度来看,我需要使用一种跟踪类型,它允许我在整个图形上放置六边形(或其他形状)。我相信我能够适当地调整六边形的颜色和尺寸参数,以便考虑哪些六边形应该是红色而不是橙色与黄色,以及哪些六边形应该是全尺寸而不是更小而不存在一点都不我只需要知道从哪里开始跟踪/模式。

图表的基础是每个篮球投篮的x和y坐标数据。 (假设我上面显示的图表对于两个轴都是0:50,并且我在每个范围内都有拍摄数据)。

提前道歉,这不是代码/编程特定问题,但请不要投票结束。对此有任何想法表示赞赏!

谢谢,

编辑 - 热图可能是一个选项,但似乎没有图表的热图跟踪具有我可以设置为六边形的标记参数。

EDIT2 - 使用mode ='markers'的当前散点图是一个选项,但我担心带有~2500个标记的图形会滞后(我的图形是47x50,我希望每个整数对都有一个标记)

2 个答案:

答案 0 :(得分:3)

您可以使用scatter图并将marker symbol设置为hexagon2。该字段的行可以创建为shapesenter image description here

概念代码的一些证明:

library('plotly')

p <- plot_ly()
p <- add_trace(p, 
               type = 'scatter', 
               mode = 'markers',
               marker = list(symbol = 'hexagon2',
                             size=c(200, 100, 20)),
               x = c(0.15, 0.2, 0.3),
               y = c(0.2, 0.4, 0.5))
p <- add_trace(p, 
               type = 'scatter', 
               mode = 'markers',
               marker = list(symbol = 'hexagon2',
                             size=c(50, 50, 50, 50, 50)),
               x = c(0.4, 0.5, 0.6, 0.45, 0.55),
               y = c(0.8, 0.8, 0.8, 0.825, 0.825))

p <- layout(p, 
            xaxis = list(range = c(0, 1)),
            yaxis = list(range = c(0, 1)),
            shapes = list(list(type = 'circle',
                               xref='x0',
                               yref='y0',
                               x0 = 0.1,
                               y0 = 1.4,
                               x1 = 0.9,
                               y1 = 0.6))
)
p

答案 1 :(得分:1)

我已经意味着在相当一段时间内发布更新 - 图表仍在进行中,但这就是我所拥有的:

enter image description here