您的位置:

深入探究plt.scatter

一、基本介绍

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等参数来控制点的颜色、大小和形状。对于多维数据,我们还可以为每个类别指定不同的颜色,并在散点图中添加其他的信息。希望本文能够给大家带来一些帮助。