import matplotlib.pyplot as plt import matplotlib.patches as patches def draw_priority_comparison(): fig, ax = plt.subplots(figsize=(12, 8), dpi=300) ax.set_xlim(0, 12) ax.set_ylim(0, 10) ax.axis('off') # Общий фундамент base_rect = patches.FancyBboxPatch((4, 8), 4, 1.2, boxstyle="round,pad=0.1", edgecolor='black', facecolor='#f0f0f0', linewidth=2) ax.add_patch(base_rect) ax.text(6, 8.7, "ЦИФРОВОЙ\nТЕХНОЛОГИЧЕСКИЙ СТЕК", ha='center', va='center', fontsize=11, fontweight='bold') ax.text(6, 8.2, "(Инфраструктура, ПО, Данные)", ha='center', va='center', fontsize=9, style='italic') # ЛЕВАЯ ВЕТКА: БИЗНЕС-МОДЕЛЬ ax.text(2.5, 7.2, "КОРПОРАТИВНЫЙ СЕКТОР\n(Business-driven)", ha='center', fontsize=10, fontweight='bold') # Блок Б1 draw_box(ax, 0.5, 5, 4, 1.5, "ОПТИМИЗАЦИЯ ПРОДАЖ", "Маркетинг, CRM, воронки,\nснижение операционных издержек") # Блок Б2 draw_box(ax, 0.5, 3, 4, 1.2, "КОММЕРЧЕСКАЯ ТРАНЗАКЦИЯ", "Продажа продукта или сервиса") # Блок Б3 (Финал) draw_box(ax, 0.5, 0.5, 4, 1.5, "ПРИБЫЛЬ И ДОЛЯ РЫНКА", "Максимизация ROI,\nкапитализация компании", is_goal=True) # ПРАВАЯ ВЕТКА: УНИВЕРСИТЕТ ax.text(9.5, 7.2, "УНИВЕРСИТЕТ (ЦУ)\n(Knowledge-driven)", ha='center', fontsize=10, fontweight='bold') # Блок У1 draw_box(ax, 7.5, 5, 4, 1.5, "ОБРАЗОВАТЕЛЬНАЯ СРЕДА", "LMS, методики, аналитика,\nкогнитивная вовлеченность") # Блок У2 draw_box(ax, 7.5, 3, 4, 1.2, "РАЗВИТИЕ КОМПЕТЕНЦИЙ", "Формирование знаний и навыков") # Блок У3 (Финал) draw_box(ax, 7.5, 0.5, 4, 1.5, "ЧЕЛОВЕЧЕСКИЙ КАПИТАЛ", "Новые знания, востребованность,\nсоциальное влияние", is_goal=True) # СТРЕЛКИ arrow_props = dict(arrowstyle='->', color='black', linewidth=1.5, mutation_scale=20) # От базы к веткам ax.annotate('', xy=(2.5, 6.7), xytext=(5, 8), arrowprops=arrow_props) ax.annotate('', xy=(9.5, 6.7), xytext=(7, 8), arrowprops=arrow_props) # Путь бизнеса ax.annotate('', xy=(2.5, 4.3), xytext=(2.5, 5), arrowprops=arrow_props) ax.annotate('', xy=(2.5, 2.1), xytext=(2.5, 3), arrowprops=arrow_props) # Путь университета ax.annotate('', xy=(9.5, 4.3), xytext=(9.5, 5), arrowprops=arrow_props) ax.annotate('', xy=(9.5, 2.1), xytext=(9.5, 3), arrowprops=arrow_props) plt.title('СХЕМА №6: СРАВНЕНИЕ МОДЕЛЕЙ СОЗДАНИЯ ЦЕННОСТИ В ЦИФРОВОЙ СРЕДЕ', fontsize=14, fontweight='bold', pad=20) plt.tight_layout() plt.savefig('priority_comparison.png') plt.show() def draw_box(ax, x, y, w, h, title, desc, is_goal=False): edge_w = 2 if is_goal else 1 rect = patches.Rectangle((x, y), w, h, edgecolor='black', facecolor='white', linewidth=edge_w) ax.add_patch(rect) ax.text(x + w/2, y + h*0.7, title, ha='center', va='center', fontsize=9, fontweight='bold') ax.text(x + w/2, y + h*0.3, desc, ha='center', va='center', fontsize=8) draw_priority_comparison()