Построение множества двухточечных соединений - PullRequest
0 голосов
/ 28 мая 2020

Я хочу построить большое количество связей между двумя точками в Plotly. Итак, предположим, что у меня есть точки 1,2,3,4 ... Я хочу построить соединения 1-2, 3-4, 5-6 ... Я попытался провести трассировку для каждой пары точек, где я хочу показать подключение. Это работает, но трассировок так много, что результат html невероятно медленный. В качестве альтернативы я попытался выполнить только одну трассировку, включающую все соединения, но я не знаю, как удалить или хотя бы сделать невидимыми соединения 2-3, 4-5 и т. Д. c. в моем сюжете. Я использую go .Scatter для создания следов. Для справки я включаю часть своего кода, которая создает трассировку.

            deliveries = [d for d in deliveries if d.order_type == ot]
            color = order_type_colors[ot]

            lons = zip([stations_dict[delivery.source_location.location_id].lon for delivery in ot_deliveries],
                       [customers_dict[delivery.location.location_id].lon for delivery in ot_deliveries])
            lats = zip([stations_dict[delivery.source_location.location_id].lat for delivery in ot_deliveries],
                       [customers_dict[delivery.location.location_id].lat for delivery in deliveries])

            route_trace = go.Scatter(
                name=str(ot),
                x=[l for ll in lons for l in ll],
                y=[l for ll in lats for l in ll],
                text=[str(delivery.historic_delivery_date) for delivery in ot_deliveries],
                mode="lines",
                showlegend=True,
                visible=False,
                line=dict(width=size_factor, color=color)
            )
...