以不同的间隔绘制多个函数(Mathematica)

Mat*_*mer 3 plot wolfram-mathematica function intervals

我在Mathematica需要一些帮助.我正在尝试绘制存储在列表中的函数,例如:

list = {{3x,1,5},{2x ^ 2,0,4}}

如果我输入,我需要输出类似的输出:

显示[剧情[3倍,{X,1,5}],剧情[2倍^ 2,{X,0,4}]]

但我不太确定这是如何实现的?

提前致谢

Mic*_*lat 6

在许多可能的方法中,这里可能是一个神秘而简洁的单行,然后解释:

Show[Plot[#, {x, ##2}] & @@@ list]
Run Code Online (Sandbox Code Playgroud)

Mathematica图形

首先,#是运营商的形式Slot##是运营商的形式SlotSequence,并且f @@@ expr是管道符Apply[f,expr,{1}]],所以这可能是更冗长表示为:

Show[Apply[Plot[#, {x, ##2}] &, list, {1}]]
Run Code Online (Sandbox Code Playgroud)

因此,对于您的每个子列表list,元素作为参数传递给纯函数.在纯函数中,#是第一个参数(第一个子元素,例如函数3x),并且##2是参数的其余部分(从第二个参数开始Sequence,例如Sequence[0, 4]).然后,对于第一个元素,评估的命令将是Plot[3x, {x,0,4}].

如果上述内容过于神秘,您可以随时定义一个函数并使用Map:

plotter[{func_, interval__}] := Plot[func, {x, interval}]
Show[plotter /@ list]
Run Code Online (Sandbox Code Playgroud)

希望有所帮助!