Автоматическая генерация UML диаграмм из кода Python

Я совсем обленился за самоизоляцию. МНе необходимо построить Action Diagramm в UML для класса на Python. Конечно же, имея код под 500 строк с кучей условий и циклов, преспектива делать его руками как-то совсем неприятна. Хотелось бы так - загрузил файл с расширением *.py и диаграмма готова. Я верю, что такое существует, возможно даже онлайн. Загуглил. Нашел 3-4 ссылки на редакторы.Онлайн не нашел. Скачал. И они как-правило не работают... Сразу скажу, что я скачал PynSource и у меня Ubuntu. И он не правильно обработал код. То есть , вывел только лишь список входных переменных... Подскажите, я уверен, что должна быть какая-то надстройка над PyCharm....


Ответы (2 шт):

Автор решения: Valeriy M. Raznomazov

Для решения данной задачи нашлось масса решений прежде всего Эклипс Эклипс

В нем все удобно получилось и собственно говоря на этом вопрос можно закрыть.

вот вторая ссылкаОна кстати легко устанавливается через ерминал sudo snap install pynsource

→ Ссылка
Автор решения: Диана
mport matplotlib.pyplot as plt
import numpy as np

# Data for plotting
questions = [
    "Как часто вы пользуетесь такси?",
    "Факторы выбора приложения",
    "Важность выбора музыки",
    "Оценка качества водителей",
    "Улучшения в приложении",
    "Готовность платить за функции",
    "Оценка опыта использования"
]

# Answer options and their frequencies
answers = {
    "Как часто вы пользуетесь такси?": ["1-2 раза в неделю", "3-5 раз в неделю"],
    "Факторы выбора приложения": ["Цена", "Удобство", "Отзывы"],
    "Важность выбора музыки": ["Очень важно", "Не важно"],
    "Оценка качества водителей": ["4-5б", "3б"],
    "Улучшения в приложении": ["Выбор музыки", "Оценка водителей"],
    "Готовность платить за функции": ["Да", "Нет"],
    "Оценка опыта использования": ["Хорошо", "Удовлетворительно"]
}

frequencies = {
    "Как часто вы пользуетесь такси?": [3, 4],
    "Факторы выбора приложения": [5, 3, 2],
    "Важность выбора музыки": [5, 2],
    "Оценка качества водителей": [6, 1],
    "Улучшения в приложении": [5, 4],
    "Готовность платить за функции": [6, 1],
    "Оценка опыта использования": [5, 2]
}

# Plotting the data
fig, axes = plt.subplots(7, 1, figsize=(10, 30))

for i, question in enumerate(questions):
    ax = axes[i]
    ax.bar(answers[question], frequencies[question], color='skyblue')
    ax.set_title(question)
    ax.set_xlabel('Ответы')
    ax.set_ylabel('Количество')

plt.tight_layout()
plt.show()
→ Ссылка