Python 用参数绘制函数(matplotlib)

Python 用参数绘制函数(matplotlib),python,matplotlib,graph,Python,Matplotlib,Graph,我定义了两个函数,第二个是工厂函数 def bear(S,K): if S <= K: value = K elif K < S and S < 2*K: value = 2*K - S else: value = 0 return value def makeBear(K) def bear1(x): return bear(x,K) re

我定义了两个函数,第二个是工厂函数

 def bear(S,K):
     if S <= K:
         value = K
     elif K < S and S < 2*K:
         value = 2*K - S
     else:
         value = 0
     return value

 def makeBear(K)
     def bear1(x):
         return bear(x,K)
     return bear1
等等

给出了图表上的点,但我需要一种更小、更干净的方法来完成此操作。

  • 你可以试试linspace命令
y=linspace(x1,x2)返回x1和x2之间100个均匀间隔点的行向量

示例

y=linspace(x1,x2,n)生成n个点。点之间的间距为(x2-x1)/(n-1)

linspace类似于冒号操作符“:”,但它直接控制点数,并且始终包含端点。名称“linspace”中的“lin”指的是生成线性间隔值,而不是生成对数间隔值的同级函数logspace

示例

等距数向量 在间隔[-5,5]中创建一个包含100个等间距点的向量

y=linspace(-5,5); 具有指定数量的值的向量 在间隔[-5,5]中创建由7个等间距点组成的向量

y1=linspace(-5,5,7) y1=


-5.0000-3.3333-1.6667 0 1.6667 3.3333 5.0000

我不完全确定这里的问题是什么。如果你想要一个关于如何绘制x,y值的教程,这个问题太广泛了。你可以用谷歌搜索。如果问题是如何获得值,那么(例如10个值)
x=range(10);y=[makeBear10(val)表示x中的val]
?我基本上需要绘制一个x轴为0-30,y轴为makeBear10(x)的图形。然而你的答案已经帮了大忙了。我只需要知道如何设置自己的y轴限制,在我的例子中[-1,11]。我假设它与plt.axis[-1,11]很接近,但我会尝试找出那个
makeBear10 = makeBear(10)
makeBear10(0)
makeBear10(1)
makeBear10(2)