1

Mathematica 的 Manipulate 函数将您想要滑块的参数列表及其值范围作为其最终参数。但为什么不列出列表呢?这样我就可以轻松地为我拥有的这个大的转换规则列表生成所有滑块,例如:

parms = {a -> 2, b -> 4, c -> 5};
Table[{{parms[[i]][[1]], parms[[i]][[2]]}, 0, 10}, {i, 1,Length[parms]}]

{{{a, 2}, 0, 10}, {{b, 4}, 0, 10}, {{c, 5}, 0, 10}}

然而,我想要的是:

{{a, 2}, 0, 10}, {{b, 4}, 0, 10}, {{c, 5}, 0, 10}

我现在在单元格之间复制粘贴,这相当混乱。我确信有更好的方法来做到这一点。请帮忙,谢谢!

4

1 回答 1

3

请在类似问题上查看此。

您需要的是Sequence@@在用作输入时获取要被视为所需输出的列表列表。

也许是这样的:

ClearAll[a, b, c];
parms = {a -> 2, b -> 4, c -> 5}; 
With[{values = Table[parms[[i]][[1]], {i, 1, Length[parms]}],
controls = Sequence @@
 Table[{{parms[[i]][[1]], parms[[i]][[2]], 
   Style[ToString[parms[[i]][[1]]], Red, Bold]}, 0, 10}, {i, 1, 
  Length[parms]}]},
Manipulate[values, controls]]

这使

在此处输入图像描述

于 2012-05-14T23:49:30.137 回答