此代码
from sympy import *
x=Symbol('x')
p1 = plot(x**2,(x,-2,2))
p2 = plot(x**3,(x,-2,2))
字符串
导致两个单独的图。
我想用matplotlib将它们显示为子图,而不是两个单独的图:
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = fig.add_subplot(121)
ax2 = fig.add_subplot(122)
plt.show()
型
如何添加p1
和p2
,使它们显示为matplotlib图中的子图?
3条答案
按热度按时间bqucvtff1#
问题是sympy
Plot
创建了自己的图形和轴。它并不意味着绘制到现有的轴。但是,您可以在显示渐近图之前,用现有的轴替换绘制图的轴。
字符串
的数据
busg9geu2#
我的解决方案没有直接将
p1
、p2
添加到子图中,而是捕获并使用它们的(x,y)坐标。字符串
结果图:
的数据
92vpleto3#
您可以简单地使用plotgrid在一个图中获得2个或多个图。
参见:sympy.plotting.PlotGrid()
下面是一个工作示例:
字符串
结果图:
的数据