Автоматическая генерация UML диаграмм из кода Python
Я совсем обленился за самоизоляцию. МНе необходимо построить Action Diagramm в UML для класса на Python. Конечно же, имея код под 500 строк с кучей условий и циклов, преспектива делать его руками как-то совсем неприятна. Хотелось бы так - загрузил файл с расширением *.py и диаграмма готова. Я верю, что такое существует, возможно даже онлайн. Загуглил. Нашел 3-4 ссылки на редакторы.Онлайн не нашел. Скачал. И они как-правило не работают... Сразу скажу, что я скачал PynSource и у меня Ubuntu. И он не правильно обработал код. То есть , вывел только лишь список входных переменных... Подскажите, я уверен, что должна быть какая-то надстройка над PyCharm....
Ответы (2 шт):
Для решения данной задачи нашлось масса решений прежде всего Эклипс Эклипс
В нем все удобно получилось и собственно говоря на этом вопрос можно закрыть.
вот вторая ссылкаОна кстати легко устанавливается через ерминал 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()