使用 Python 的 Matplotlib 库可以创建各种炫酷的图表。以下是一些示例代码,展示如何绘制一些有趣的图表:
1. 3D 散点图
import matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Dimport numpy as np
# 创建数据x = np.random.rand(100)y = np.random.rand(100)z = np.random.rand(100)
# 创建图形和轴fig = plt.figure()ax = fig.add_subplot(111, projection='3d')
# 绘制散点图ax.scatter(x, y, z, c='r', marker='o')
# 设置标签ax.set_xlabel('X Label')ax.set_ylabel('Y Label')ax.set_zlabel('Z Label')
# 显示图形plt.show()
2. 动态更新的折线图
import matplotlib.pyplot as pltimport numpy as npfrom matplotlib.animation import FuncAnimation
# 创建初始数据x = np.linspace(0, 2 * np.pi, 100)y = np.sin(x)
# 创建图形和轴fig, ax = plt.subplots()line, = ax.plot(x, y)
# 更新函数def update(frame): y = np.sin(x + frame / 10) line.set_ydata(y) return line,
# 创建动画ani = FuncAnimation(fig, update, frames=np.arange(0, 200), blit=True)
# 显示图形plt.show()
3. 环形图
import matplotlib.pyplot as plt
# 数据sizes = [25, 35, 20, 20]labels = ['A', 'B', 'C', 'D']colors = ['red', 'yellow', 'green', 'blue']
# 创建环形图fig, ax = plt.subplots()ax.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=90)ax.axis('equal') # 等轴比例,使饼图为圆形ax.set_title('环形图示例')
# 显示图形plt.show()
4. 热力图
import matplotlib.pyplot as pltimport numpy as np
# 创建数据data = np.random.rand(10, 10)
# 创建热力图fig, ax = plt.subplots()cax = ax.matshow(data, cmap='coolwarm')
# 添加颜色条fig.colorbar(cax)
# 设置标签ax.set_xticklabels([''] + [f'Col {i+1}' for i in range(10)])ax.set_yticklabels([''] + [f'Row {i+1}' for i in range(10)])
# 显示图形plt.show()
5. 填充区域图
import matplotlib.pyplot as pltimport numpy as np
# 创建数据x = np.linspace(0, 10, 100)y1 = np.sin(x)y2 = np.cos(x)
# 创建图形和轴fig, ax = plt.subplots()
# 绘制曲线ax.plot(x, y1, label='sin(x)')ax.plot(x, y2, label='cos(x)')
# 填充区域ax.fill_between(x, y1, y2, where=(y1 > y2), color='green', alpha=0.3)ax.fill_between(x, y1, y2, where=(y1 <= y2), color='red', alpha=0.3)
# 添加图例ax.legend()
# 显示图形plt.show()
这些示例展示了如何使用 Matplotlib 创建不同类型的炫酷图表。你可以根据自己的需求和数据进行调整和扩展。
领取专属 10元无门槛券
私享最新 技术干货