[英]Trying to plot the triangular function in python using arrays
我的问题是:编写三角形 function 的矢量化版本。 function 应该将 NumPy 数组作为输入并返回向量化数组。 您还应该使用 matplot 显示三角形。
我正在努力矢量化 function
t(x) = 0, x < 0; x, 0 <= x <1; 2-x, 1 <= x < 2, 0, x >= 2
t(x) = 0, x < 0; x, 0 <= x <1; 2-x, 1 <= x < 2, 0, x >= 2
。
甚至不确定如何将其放入数组 tbh
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
def triangle (x):
return np.where(x<0, 0, 1)
plt.ylim(0,1)
plt.xlim(0,8)
plt.show(x)
据我了解,这个想法是不使用if
语句。
import numpy as np
import matplotlib.pyplot as plt
def my_fun(x):
y = np.zeros_like(x)
mask = (x >= 0) & (x < 1)
y[mask] = x[mask]
mask = (x >= 1) & (x < 2)
y[mask] = 2. - x[mask]
return y
x = np.random.rand(1000) * 5 - 1.
y = my_fun(x)
plt.plot(x, y, 'o')
plt.show()
我正在对已修改的 select 值使用掩码。 还必须屏蔽x
值,以便正确完成计算。 请注意plt.show()
通常不使用 arguments 并且只显示您之前绘制的内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.