使用 matplotlib subplot 绘制散点图

Plot scatter graphs with matplotlib subplot

我正在尝试绘制散点图。它将多个数组作为输入,但绘制成单个图形。 这是我的代码:

import numpy as np
import os
import matplotlib.pyplot as plt

ax = plt.gca()
n_p=np.array([17.2,25.7,6.1,0.9,0.5,0.2])   
n_d=np.array([1,2,3])
a_p=np.array([4.3,1.4,8.1,1.8,7.9,7.0])
a_d=np.array([12,13,14])

ax.scatter = ([n_d[0]/n_d[1]],[n_p[0]/n_p[1]])
ax.scatter = ([a_d[0]/a_d[1]],[a_p[0]/a_p[1]])

我将从 csv 文件中读取数组,这里我只是举一个简单的例子(为此我导入了 os)。我想绘制 n_p 的数组元素 2/元素 1 的比率(作为 x 轴)并且与 n_d 相同(作为 y 轴)。这将在图中给出一个点。 a_p 和 a_d 数组后面会进行类似的操作,并将点附加到图形中。会有更多的数据要追加,但要了解这个过程,两个就足够了。 我试着效仿 here 的例子。 如果我使用颜色,我会得到语法错误。 如果我不使用颜色,我会得到一个空白图。

抱歉,我的编码经验是初学者,所以代码很糟糕。 提前致谢。

从函数调用中删除 =

import numpy as np
import os
import matplotlib.pyplot as plt

ax = plt.gca()
n_p=np.array([17.2,25.7,6.1,0.9,0.5,0.2])   
n_d=np.array([1,2,3])
a_p=np.array([4.3,1.4,8.1,1.8,7.9,7.0])
a_d=np.array([12,13,14])

ax.scatter([n_d[0]/n_d[1]],[n_p[0]/n_p[1]])
ax.scatter([a_d[0]/a_d[1]],[a_p[0]/a_p[1]])