File size: 1,223 Bytes
815d1e1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import matplotlib.pyplot as plt
import numpy as np

# 数据
# data = [375/500, 32/125, 12/93, 6/81, 7/75, 2/68]
data = [163/300, 21/137, 21/116, 6/95, 4/89, 3/85]
labels = ['1', '2', '3', '4', '5', '6']

# 创建图形
plt.figure(figsize=(10, 6))

# 绘制柱状图(更适合分类数据)
x_pos = range(len(data))
plt.bar(x_pos, data, edgecolor='black', alpha=0.7, color='skyblue')

# 设置标题和标签
plt.title('Data Histogram', fontsize=14, fontweight='bold')
plt.xlabel('Categories', fontsize=12)
plt.ylabel('Frequency', fontsize=12)

# 设置x轴标签
plt.xticks(x_pos, labels)

# 添加网格
plt.grid(True, alpha=0.3, axis='y')

# 显示数值标签
for i, value in enumerate(data):
    plt.text(i, value + max(data)*0.01, str(value), ha='center', va='bottom', fontweight='bold')

# 调整布局
plt.tight_layout()

# 保存图片
plt.savefig('histogram_mathhard_300.png', dpi=300, bbox_inches='tight')
print("图片已保存为: histogram.png")

# 显示图形
plt.show()

# 打印统计信息
print(f"数据: {data}")
print(f"数据个数: {len(data)}")
print(f"最大值: {max(data)}")
print(f"最小值: {min(data)}")
print(f"平均值: {np.mean(data):.2f}")
print(f"中位数: {np.median(data):.2f}")