📜  Python中的 matplotlib.pyplot.scatter()

📅  最后修改于: 2022-05-13 01:54:34.675000             🧑  作者: Mango

Python中的 matplotlib.pyplot.scatter()

Matplotlib是一个综合库,用于在Python中创建静态、动画和交互式可视化。它用于在Python中绘制各种图,如散点图、条形图、饼图、折线图、直方图、3-D 图等等。我们将从 matplotlib 库中了解散点图。
注意:有关更多信息,请参阅Python Matplotlib - 概述

matplotlib.pyplot.scatter()

散点图用于观察变量之间的关系,并用点来表示它们之间的关系。 matplotlib 库中的scatter()方法用于绘制散点图。散点图广泛用于表示变量之间的关系以及一个变量的变化如何影响另一个变量。
句法
scatter() 方法的语法如下:

scatter() 方法接受以下参数:

  • x_axis_data-包含 x 轴数据的数组
  • y_axis_data-包含 y 轴数据的数组
  • s-标记大小(可以是标量或大小等于 x 或 y 大小的数组)
  • c-标记颜色序列的颜色
  • 标记-标记样式
  • cmap- cmap 名称
  • linewidths-标记边框的宽度
  • edgecolor -标记边框颜色
  • alpha混合值,介于 0(透明)和 1(不透明)之间

除 x_axis_data 和 y_axis_data 外,所有其他参数都是可选的,默认值为 None。以下是具有各种参数的散点图示例。
示例 1:这是散点图的最基本示例。

Python3
import matplotlib.pyplot as plt
 
 
x =[5, 7, 8, 7, 2, 17, 2, 9,
    4, 11, 12, 9, 6]
 
y =[99, 86, 87, 88, 100, 86,
    103, 87, 94, 78, 77, 85, 86]
 
plt.scatter(x, y, c ="blue")
 
# To show the plot
plt.show()


Python3
import matplotlib.pyplot as plt
 
# dataset-1
x1 = [89, 43, 36, 36, 95, 10,
      66, 34, 38, 20]
 
y1 = [21, 46, 3, 35, 67, 95,
      53, 72, 58, 10]
 
# dataset2
x2 = [26, 29, 48, 64, 6, 5,
      36, 66, 72, 40]
 
y2 = [26, 34, 90, 33, 38,
      20, 56, 2, 47, 15]
 
plt.scatter(x1, y1, c ="pink",
            linewidths = 2,
            marker ="s",
            edgecolor ="green",
            s = 50)
 
plt.scatter(x2, y2, c ="yellow",
            linewidths = 2,
            marker ="^",
            edgecolor ="red",
            s = 200)
 
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()


输出

python-matplotlib-scatter

示例 2:两个数据集具有不同形状和颜色的散点图。

Python3

import matplotlib.pyplot as plt
 
# dataset-1
x1 = [89, 43, 36, 36, 95, 10,
      66, 34, 38, 20]
 
y1 = [21, 46, 3, 35, 67, 95,
      53, 72, 58, 10]
 
# dataset2
x2 = [26, 29, 48, 64, 6, 5,
      36, 66, 72, 40]
 
y2 = [26, 34, 90, 33, 38,
      20, 56, 2, 47, 15]
 
plt.scatter(x1, y1, c ="pink",
            linewidths = 2,
            marker ="s",
            edgecolor ="green",
            s = 50)
 
plt.scatter(x2, y2, c ="yellow",
            linewidths = 2,
            marker ="^",
            edgecolor ="red",
            s = 200)
 
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

输出

python-matplotlib-scatter