fork download
  1.  
Success #stdin #stdout 0.02s 9284KB
stdin
import matplotlib.pyplot as plt
import numpy as np

# 设置中文字体
plt.rcParams['font.sans-serif'] = ['WenQuanYi Zen Hei']
plt.rcParams['axes.unicode_minus'] = False

# 感情状况数据
status_labels = ['正在恋爱', '单身', '刚失恋']
status_counts = [9, 18, 1]
status_percentages = [32.14, 64.29, 3.57]

# 创建柱状图
fig, ax = plt.subplots(figsize=(8, 5))
bars = ax.bar(status_labels, status_counts, color=['#3498db', '#e74c3c', '#f39c12'], alpha=0.8)

# 在柱子上添加数值和百分比
for bar, count, pct in zip(bars, status_counts, status_percentages):
    height = bar.get_height()
    ax.text(bar.get_x() + bar.get_width()/2., height + 0.1,
            f'{count}人\n({pct}%)', ha='center', va='bottom', fontsize=10)

# 设置标题和标签
ax.set_title('大学生感情状况分布', fontsize=14, fontweight='bold', pad=20)
ax.set_ylabel('人数', fontsize=12)
ax.set_ylim(0, max(status_counts) * 1.2)

# 网格线
ax.yaxis.grid(True, alpha=0.3, linestyle='--')
ax.set_axisbelow(True)

# 调整布局
plt.tight_layout()
plt.savefig('/mnt/relationship_status.png', dpi=300, bbox_inches='tight')
plt.close()

print("感情状况分布图表已生成")
stdout
Standard output is empty