在 `python` 中的一个图中绘制符号函数和点

Plot symbolic function and point in one figure in `python`

import sympy
import matplotlib.pyplot as plt
from sympy import plot
x=sympy.symbols('x')
f=(x**2-4)**2/8-1
plot(f,(x,0,3),xlabel='x',ylabel='y',label='$f(x)$')
plt.scatter(2,-1,label="titik optimum",color="blue",marker="s",s=50)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Metode Golden Search')
plt.legend()
plt.show()

我想在一个图中绘制符号函数和点。但结果是符号函数图与点图分离。谁知道如何在 python?

中的一张图中显示绘图符号函数和点

Sympy 的情节 . These are lists of dictionaries towards matplotlib's plot and annotate 功能。标记似乎没有出现在图例中,但您可以使用注释代替。

from sympy import symbols, plot

x = symbols('x')
f = (x ** 2 - 4) ** 2 / 8 - 1
plot(f, (x, 0, 3), xlabel='x', ylabel='y', label='$f(x)$', title='Metode Golden Search', legend=True, size=(12, 5),
     markers=[{'args': [2, -1], 'mfc': "none", 'mec': "blue", 'marker': "s", 'ms': 20}],
     annotations=[{'xy': (2, -1), 'text': "titik optimum\n", 'ha': 'center', 'va': 'bottom', 'color': 'blue'}])