Matplotlib基础--简单散点图
1. 介绍
Matplotlib是一个用于创建2D图表和绘图的Python库。它是Python最流行的可视化库之一,可以轻松地创建各种各样的图表,包括线图、条形图、饼图以及散点图等。本文将详细介绍如何利用Matplotlib库创建简单散点图。
2. 准备工作
在开始之前,我们需要准备一些数据来创建散点图。假设我们有一些关于一个城市的温度数据,我们想要将这些数据可视化出来。首先,我们需要导入必要的库:
import matplotlib.pyplot as plt
import numpy as np
接下来,我们创建一个numpy数组来表示温度数据,以及一个等长的数组来表示时间。
temperature = np.array([25, 28, 30, 32, 35, 34, 31, 29, 27, 26])
time = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
3. 创建散点图
有了数据之后,我们可以开始绘制散点图了。使用Matplotlib库的scatter函数可以很方便地实现:
plt.scatter(time, temperature)
plt.show()
运行这段代码,将会显示出一个简单的散点图。x轴表示时间,y轴表示温度,每个点表示一个温度数据。这样我们可以更直观地看到温度随时间的变化趋势。
4. 自定义散点图
上面的散点图看起来比较简单,并没有添加任何自定义的样式。我们可以通过传递一些参数来自定义散点图的样式。
4.1 设置点的颜色和大小
我们可以通过传递c参数来指定每个点的颜色,通过s参数来指定每个点的大小。例如,我们可以把温度高于30度的点设置为红色,大小为100:
colors = np.where(temperature > 30, 'red', 'blue')
sizes = np.where(temperature > 30, 100, 30)
plt.scatter(time, temperature, c=colors, s=sizes)
plt.show()
在上面的例子中,使用where函数根据温度的大小来决定颜色和大小的值。
4.2 设置标题和坐标轴标签
我们还可以给散点图添加标题和坐标轴标签,使其更加完整和易读。
plt.scatter(time, temperature, c=colors, s=sizes)
plt.title('Temperature Changes Over Time')
plt.xlabel('Time')
plt.ylabel('Temperature')
plt.show()
通过调用title函数,xlabel函数和ylabel函数,我们可以设置相应的文本内容。
4.3 添加图例
如果我们有多组数据需要显示,可以使用图例来标记不同的数据。可以通过调用legend函数来创建图例,并使用label参数来指定每组数据对应的标签。
temperature_2 = np.array([23, 26, 27, 29, 33, 32, 30, 28, 26, 24])
plt.scatter(time, temperature, c=colors, s=sizes, label='Temperature 1')
plt.scatter(time, temperature_2, c='green', s=50, label='Temperature 2')
plt.legend()
plt.title('Temperature Changes Over Time')
plt.xlabel('Time')
plt.ylabel('Temperature')
plt.show()
上面的例子中,我们添加了一个新的温度数据temperature_2,给它设置了不同的颜色和大小,并添加了一个图例来标记这两组数据。
5. 总结
本文介绍了如何使用Matplotlib库创建简单散点图,包括准备数据、绘制散点图以及自定义散点图的样式。通过创建散点图,我们可以更直观地展示数据之间的关系,并更好地理解其变化趋势。
需要注意的是,本文中的温度数据和时间数据都是随机生成的,并没有实际意义。在实际应用中,我们需要根据需要准备相应的数据,并按照实际情况进行绘图。