Диаграмма перекрестных перекрестных потоков (Санки или другие)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Диаграмма перекрестных перекрестных потоков (Санки или другие)

Сообщение Anonymous »

Я пытаюсь сделать расходную диаграмму дорожного перекрестка в Python. Проблема в том, что ни один из специфичных для Санки модулей, которым мне удалось найти координаты настройки поддержки узлов и вращение выходных и входных потоков. Например, это то, чего я достиг с помощью библиотеки Sugikey :

Код: Выделить всё

import networkx as nx
import matplotlib.pyplot as plt
import sugikey

coords = {
'West': {
'out': (0, 95),
'in': (0, 105)
},
'South': {
'out': (105, 0),
'in': (95, 0)
},
'East': {
'out': (200, 105),
'in': (200, 95)
},
'North': {
'out': (95, 200),
'in': (105, 200)
}
}

flows = {
'West': {
'South': 5,
'East': 15,
'North': 3
},
'South': {
'West': 5,
'East': 2,
'North': 13
},
'East': {
'South': 3,
'West': 17,
'North': 7
},
'North': {
'South': 11,
'East': 2,
'West': 1
}
}

dig = nx.DiGraph()
for out_node, dest_flows in flows.items():
onode = coords[out_node]['out']
for in_node, flow in dest_flows.items():
inode = coords[in_node]['in']
if onode not in dig.nodes:
dig.add_node(onode, name=out_node)
if inode not in dig.nodes:
dig.add_node(inode, name=in_node)
dig.add_edge(onode, inode, value=flow)

fig, ax = plt.subplots()
sugikey.sankey.sankey_from_dig(dig, ax=ax)
fig.savefig("test.png")

Идея верна, но она должна смотреть что -то подобное (с этого сайта):

В моем случае может быть 2 или более узлов с потоками в/вне (Не-санки, основанный на чистой тригонометрии и модуле Bezier < /code> для подключения групп), который тоже работает, но код стал слишком грязным, и результаты являются несовместимыми, иногда довольно уродливыми или неверными. < /p>
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»