0

我想创建一个函数,它在绘制时返回一个面积为 1 的三角形。我想使用“UnitTriangle”功能来做到这一点。

我试过将“UnitTriangle”乘以 2(1/x),乘以 2(1/(Max[x]-Min[x]),然后乘以 Total[x],但没有一个返回我正在寻找的结果为了。

Triangle[x_] := (2*(1/x))*UnitTriangle[x];
Plot[Triangle[x], {x, -2, 2} , PlotRange -> All]

我理解为什么这不能按我的意愿工作(它正在评估每个 x 输入),但我不知道如何从绘制时提供的输入列表中找到三角形的底。

有什么想法吗?

提前感谢您的帮助!!

4

1 回答 1

0

尝试这个

unitAreaTriangle[w_]:=(
  triangle[x_]:=Piecewise[{
    { 4/w^2*x+2/w,-w/2<=x<0},
    {-4/w^2*x+2/w, 0<=x<=w/2},
    {0,True}}];
  Plot[triangle[x],{x,-w,w},PlotRange->All]);
unitAreaTriangle[2]

或者

plotUnitAreaTriangle[w_]:=Plot[
  Piecewise[{
    { 4/w^2*x+2/w,-w/2<=x<0},
    {-4/w^2*x+2/w, 0<=x<=w/2},
    {0,True}}],
  {x,-w,w},PlotRange->All];
plotUnitAreaTriangle[2]
于 2019-05-04T07:27:00.043 回答