Python - 一个图中的两个数字

标签 python matplotlib

我有两个 python 绘图函数:

def plotData(data):
    fig, ax = plt.subplots()
    results_accepted = data[data['accepted'] == 1]
    results_rejected = data[data['accepted'] == 0]
    ax.scatter(results_accepted['exam1'], results_accepted['exam2'], marker='+', c='b', s=40)
    ax.scatter(results_rejected['exam1'], results_rejected['exam2'], marker='o', c='r', s=30)
    ax.set_xlabel('Exam 1 score')
    ax.set_ylabel('Exam 2 score')
    return ax

第二个函数是:

def plot_boundry(theta,x):
    """
    """
    plt.figure(1)
    px = np.array([x[:, 1].min() - 2, x[:, 1].max() + 2])
    py = (-1 / theta[2]) * (theta[1] * px + theta[0])
    fig, ax = plt.subplots()
    ax.plot(px, py)
    return ax

我正在给两者打电话:

#####PLOT ######
ax = plotData(df)
ax = plot_boundry(opt_theta, x)

我得到 2 个独立的图:
enter image description here

enter image description here

我有 2 张单独的图片。如何将两个情节合二为一。 两个情节应该是一个情节。

最佳答案

这取决于你到底想要什么:

  1. 如果你想把两个图叠加起来,那么你可以调用hold (True) 在第一个之后,然后绘制第二个,然后调用 hold(False)

  2. 如果你想把两个图放在一个图中,但并排(或一个在另一个之上),那么你可以使用 subplot .例如,在绘制第一个之前调用 subplot(2, 1, 1),然后在第二个之前调用 subplot(2, 1, 2)

关于Python - 一个图中的两个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39793508/

相关文章:

python - 如何从 FastAPI 中的 UploadFile 获取文件路径?

python - 创建 Json 输出 Boto3

python - python中的这个ssl错误是什么意思?

python - 如何在 Django 中触发 500 错误?

Python:为给定项目的二维列表中的索引返回 2 个整数

python - 使用 matplotlib 为带有标签的点设置动画

python - 导入 pyplot 模块并调用 pyplot,plot() 但没有存储对任何变量的返回。但是调用 pyplot.show() 函数?

python - 使用 matplotlib 创建带有回归线的箱线图

python - 在一张图上绘制多个密度

python - 修改 matplotlib 的比例