一、基本介绍
plt.scatter是matplotlib中的一个函数,用于绘制散点图。该函数接受两个参数,分别是x和y坐标。我们可以传递一组x和y坐标,plt.scatter将以这些坐标为中心绘制散点图。此外,该函数还可以接受许多其他的参数,以控制点的大小、形状、颜色等。
下面是一个简单的例子:
import matplotlib.pyplot as plt import numpy as np x = np.random.rand(100) y = np.random.rand(100) plt.scatter(x, y) plt.show()
执行上面的代码,我们可以看到生成的散点图。所有的点的大小、颜色、形状都是默认的,但是我们可以传递其他参数来改变它们。
二、控制散点的颜色
plt.scatter函数有一个color参数,可以用来控制散点的颜色。该参数可以接受很多不同的输入,比如一个字符串、一个列表、一个数组等。例如,我们可以传递一个值为‘r’的字符串,让所有的点都变成红色:
import matplotlib.pyplot as plt import numpy as np x = np.random.rand(100) y = np.random.rand(100) plt.scatter(x, y, color='r') plt.show()
如果我们传递的是一个列表或数组,它应该与x和y坐标的长度相同,并且一一对应。例如,我们可以传递一个与x和y坐标相同长度的列表:
import matplotlib.pyplot as plt import numpy as np x = np.random.rand(100) y = np.random.rand(100) colors = np.random.rand(100) plt.scatter(x, y, c=colors) plt.show()
上面的代码将每个点的颜色随机设置成了一个浮点数。如果我们想要指定颜色的范围,可以使用cmap参数。该参数接受一个字符串,表示我们想要使用的颜色映射。比如,我们可以使用‘viridis’来设置颜色映射:
import matplotlib.pyplot as plt import numpy as np x = np.random.rand(100) y = np.random.rand(100) colors = np.random.rand(100) plt.scatter(x, y, c=colors, cmap='viridis') plt.show()
三、控制散点的大小和形状
plt.scatter函数还有两个与控制散点大小和形状相关的参数,分别是s和marker。s参数用于指定点的大小,而marker参数用于指定点的形状。我们可以传递一个整数作为s参数,来让所有点的大小一致。例如,我们可以把所有点的大小调整成100:
import matplotlib.pyplot as plt import numpy as np x = np.random.rand(100) y = np.random.rand(100) plt.scatter(x, y, s=100) plt.show()
marker参数用于指定点的形状。该参数可以接受很多不同的字符串输入,每个输入对应不同的点形状。例如,我们可以使用'o'来表示实心圆,使用'+'来表示十字形:
import matplotlib.pyplot as plt import numpy as np x = np.random.rand(100) y = np.random.rand(100) plt.scatter(x, y, marker='+') plt.show()
四、多维数据的散点图
plt.scatter函数还可以用于绘制多维数据的散点图。比如,我们可以把数据分成许多类别,并为每个类别指定不同的颜色:
import matplotlib.pyplot as plt import numpy as np x1 = np.random.rand(100) y1 = np.random.rand(100) x2 = np.random.rand(100) y2 = np.random.rand(100) plt.scatter(x1, y1, c='r', label='class 1') plt.scatter(x2, y2, c='b', label='class 2') plt.legend() plt.show()
上面的代码将数据分成了两类,并为每类分别指定了颜色。除此之外,我们还可以在散点图中添加其他的信息,比如线条、文本等。
五、总结
plt.scatter是一个非常灵活的函数,可以用来绘制各种类型的散点图。我们可以使用color、s、marker等参数来控制点的颜色、大小和形状。对于多维数据,我们还可以为每个类别指定不同的颜色,并在散点图中添加其他的信息。希望本文能够给大家带来一些帮助。