在一条线上绘制一个特定点,matplotlib

时间:2017-05-08 18:00:44

标签: python matplotlib

我有2个列表,我将其作为一行绘制:

x =  [ 0.1, 0.3, 0.5, 0.7, 0.9]
y = [ 4.0, 3.0, 2.0, 3.0, 4.0]
plt.plot(x,y)

然后我想绘制一个标记,例如'x',在该行上未在我的列表中指定的点,例如

x = 0.2

有这么简单的方法吗?

1 个答案:

答案 0 :(得分:0)

“行”的等式为y = 5 * abs(x - 0.5) + 2。因此,您可以使用类似

的内容绘制点
plt.plot(0.2, 3.5, 'x')

3.5 = 5.0 * abs(0.2 - 0.5) + 2.0

或者,您可以使用@PahnH的解决方案并使用numpy.interp(0.2, x, y)。如果您的数据实际上不是绝对值函数,那么这可能是更好的通用解决方案,除了本地。

相关问题