Pyplot 标签数学模式字符串格式化
Pyplot label math mode string formatting
我想在 pyplot 标签中写一个数学表达式,在这个表达式中我想使用变量值。它应该是这样的
我认为这可以通过字符串格式来完成。但是以下不起作用
values = np.array([0.123, 1.234])
plt.plot(x, y, label='best fit curve $y={0:.2f}x+{1:.2f}$'.format(values))
如果您对可迭代值使用 splat 运算符,那么我想它应该可以正常工作?
plt.plot(x, y, label='best fit curve $y={0:.2f}x+{1:.2f}$'.format(*values))
要格式化的字符串中有两个占位符。但是您通过 format
方法提供了一个值。
相反,您需要提供与占位符一样多的参数。在这种情况下,您有一个 tuple/an 值数组,您可以简单地解压它,.format(*values)
.
import numpy as np
import matplotlib.pyplot as plt
values = np.array([0.123, 1.234])
plt.plot([0], [1], label='best fit curve $y={0:.2f}x+{1:.2f}$'.format(*values))
plt.legend()
plt.show()
我想在 pyplot 标签中写一个数学表达式,在这个表达式中我想使用变量值。它应该是这样的
我认为这可以通过字符串格式来完成。但是以下不起作用
values = np.array([0.123, 1.234])
plt.plot(x, y, label='best fit curve $y={0:.2f}x+{1:.2f}$'.format(values))
如果您对可迭代值使用 splat 运算符,那么我想它应该可以正常工作?
plt.plot(x, y, label='best fit curve $y={0:.2f}x+{1:.2f}$'.format(*values))
要格式化的字符串中有两个占位符。但是您通过 format
方法提供了一个值。
相反,您需要提供与占位符一样多的参数。在这种情况下,您有一个 tuple/an 值数组,您可以简单地解压它,.format(*values)
.
import numpy as np
import matplotlib.pyplot as plt
values = np.array([0.123, 1.234])
plt.plot([0], [1], label='best fit curve $y={0:.2f}x+{1:.2f}$'.format(*values))
plt.legend()
plt.show()