import matplotlib.pyplot as plt
import numpy as np

# 开启xkcd模式
plt.xkcd()

# 准备数据
# 散点图数据
np.random.seed(0)
x_scatter = np.random.normal(size=100)
y_scatter = np.random.normal(size=100)

# 条形图数据
categories = ['Category A', 'Category B', 'Category C']
values = [23, 45, 56]

# 折线图数据
x_line = np.linspace(0, 10, 100)
y_line = np.sin(x_line)

# 绘制散点图
plt.figure(figsize=(15, 5))

plt.subplot(1, 3, 1)
plt.scatter(x_scatter, y_scatter, color='blue')
plt.title('Scatter Plot')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')

# 绘制条形图
plt.subplot(1, 3, 2)
plt.bar(categories, values, color='orange')
plt.title('Bar Chart')
plt.xlabel('Category')
plt.ylabel('Values')

# 绘制折线图
plt.subplot(1, 3, 3)
plt.plot(x_line, y_line, color='green')
plt.title('Line Chart')
plt.xlabel('Time')
plt.ylabel('Magnitude')

# 调整布局
plt.tight_layout()

# 显示图表
plt.show()