gpt4 book ai didi

python - 在一张图片中结合 sympy 和 matplotlib 图

转载 作者:行者123 更新时间:2023-11-28 19:02:57 29 4
gpt4 key购买 nike

我需要构建一个表达式图和一个由点数组组成的图,并返回图像。为了构建表达式图,我使用了 sympy.plot,为了构建点图,我使用了 matplotlib

这是一个示例代码:

from os import remove
from matplotlib import pyplot as plt
from PIL import Image
from sympy import plot, symbols

def plot_graphic(x, y, expression, file_name):
file = '{}.png'.format(file_name)
x1, y1 = list(x), list(y)
plt.plot(x1, y1)
plt.savefig(file)
plt.close()
del y1
img = Image.open(file)
remove(file)
yield img

x = symbols('x')
plot(expression.args[1], (x, x1[0], x1[-1]), show=False).save(file)
img = Image.open(file)
remove(file)
yield img

x, y 是生成器。如何将这些图像组合在一起?

最佳答案

我找到了一个解决方案。 Sympy 有一种绘制点的方法。您需要创建一个 List2DSeries 对象,该对象执行必要的操作并使用 append 方法添加到其他图形。生成的代码如下所示。

from os import remove
from PIL import Image
from sympy import plot, symbols
from sympy.plotting.plot import List2DSeries

def plot_graphic(x, y, expression, file_name):
file = '{}.png'.format(file_name)
x1, y1 = list(x), list(y)
x = symbols('x')
graph = plot(expression.args[1], (x, x1[0], x1[-1]), show=False, line_color='r')
graph.append(List2DSeries(x1, y1))
graph.save(file)
img = Image.open(file)
remove(file)
return img

关于python - 在一张图片中结合 sympy 和 matplotlib 图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50533422/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com