Python数据分析工具:Matplotlib
是一个强大的绘图库,它提供了丰富的接口用于生成各种静态、动态和交互式的图表。以下是几个Matplotlib的基本用法示例,涵盖了不同类型的图表和常用功能。
1. 折线图(Line Plot)
折线图用于显示数据随时间或其他连续变量的变化趋势。
python">
import matplotlib.pyplot as plt
import numpy as np # 创建数据
x = np.linspace(0, 10, 100) # 生成0到10之间的100个数据点
y = np.sin(x) # 计算正弦值 # 绘制折线图
plt.figure(figsize=(10, 6)) # 设置图表大小
plt.plot(x, y, label='sin(x)', color='blue', linestyle='-', linewidth=2) # 添加标题和轴标签
plt.title('Sin Function')
plt.xlabel('X-axis')
plt.ylabel('Y-axis') # 添加图例
plt.legend() # 显示图表
plt.show()
2. 散点图(Scatter Plot)
散点图用于显示两个变量之间的关系,通常用于观察数据的分布、异常值或类别之间的关系。
python">import matplotlib.pyplot as plt
import numpy as np # 创建数据
np.random.seed(0)
n_points = 200
x = np.random.rand(n_points)
y = np.random.rand(n_points) # 绘制散点图
plt.figure(figsize=(10, 6))
plt.scatter(x, y, alpha=0.7, cmap='viridis') # 使用颜色映射 # 添加标题和轴标签
plt.title('Random Scatter Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis') # 显示图表
plt.show()
3. 直方图(Histogram)
直方图用于显示数据的分布情况,特别适用于展示数值型数据的频率分布。
python">import matplotlib.pyplot as plt
import numpy as np # 创建数据
data = np.random.normal(0, 1, 1000) # 生成1000个正态分布数据 # 绘制直方图
plt.figure(figsize=(10, 6))
plt.hist(data, bins=30, color='blue', alpha=0.7, edgecolor='black') # 添加标题和轴标签
plt.title('Histogram of Normal Distribution')
plt.xlabel('Value')
plt.ylabel('Frequency') # 显示图表
plt.show()
4. 条形图(Bar Plot)
条形图用于比较不同类别之间的数据,例如不同产品的销售量或不同类别的统计数据。
python">import matplotlib.pyplot as plt # 创建数据
categories = ['A', 'B', 'C', 'D']
values = [10, 15, 7, 12] # 绘制条形图
plt.figure(figsize=(10, 6))
plt.bar(categories, values, color='skyblue') # 添加标题和轴标签
plt.title('Bar Chart')
plt.xlabel('Category')
plt.ylabel('Value') # 显示图表
plt.show()
5. 自定义图表样式
Matplotlib允许用户自定义图表的样式,包括颜色、线型、标记、标题、轴标签、图例等。
python">import matplotlib.pyplot as plt
import numpy as np # 创建数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x) # 绘制图表并自定义样式
plt.figure(figsize=(10, 6))
plt.plot(x, y1, label='sin(x)', color='red', linestyle='--', linewidth=2)
plt.plot(x, y2, label='cos(x)', color='green', linestyle='-.', linewidth=2) # 添加标题和轴标签
plt.title('Custom Line Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis') # 添加图例
plt.legend() # 自定义坐标轴范围
plt.xlim(0, 10)
plt.ylim(-1.5, 1.5) # 显示图表
plt.show()
以上示例展示了Matplotlib在Python数据分析中的基本用法,包括绘制折线图、散点图、直方图和条形图,并介绍了如何自定义图表的样式。通过这些示例,你可以了解到Matplotlib的强大功能和灵活性,以及如何利用它来生成高质量的数据可视化图表。