【问题标题】:How build two graphs in one figure, module Matplotlib [duplicate]如何在一个图中构建两个图,模块 Matplotlib [重复]
【发布时间】:2022-01-18 18:59:50
【问题描述】:

如何根据以下等式在一个图中构建两个图形

  1. y = (x+2)^2
  2. y = sin(x/2)^2

这是我的代码:

import matplotlib.pyplot as plt
import numpy as np
from math import sin

y = lambda x: sin(x / 2) ** 2
y1 = lambda x: (x + 2) ** 2

fig = plt.subplots()

x = np.linspace(-3, 3, 100)

plt.plot(x, y(x))
plt.plot(x, y1(x))

plt.show()

【问题讨论】:

  • 您不能将 math 函数与 numpy 数组一起使用。请改用np.sin()。有关此问题的更多信息,请参阅here
  • 非常感谢
  • 仅供参考,您的问题缺乏细节,即您的问题是什么。显然,您会收到一条错误消息 - 因此您应该在问题中指定错误消息。如您所见,人们对您的问题的解释不同(“为什么我会收到错误消息?”、“如何在一个图中绘制两个函数?”和“如何将函数绘制到子图中?”)。所有三种解释都是有效的,因此您必须确保说明您的问题。

标签: python python-3.x numpy


【解决方案1】:

使用supplots 在您的图中制作 2 个轴:

import matplotlib.pyplot as plt
import numpy as np

fig, (ax1,ax2) = plt.subplots(nrows=2)

x = np.linspace(-3, 3, 100)

ax1.plot(x, np.sin(x / 2) ** 2)
ax2.plot(x, (x + 2) ** 2)

【讨论】:

    猜你喜欢
    • 2023-01-20
    • 2017-05-04
    • 2021-08-20
    • 2021-09-22
    • 2022-12-14
    • 2019-02-02
    • 2016-08-30
    • 2018-02-08
    • 1970-01-01
    相关资源
    最近更新 更多