1

我想绘制一个结合不同 ListPlots 的函数。但我一次只希望显示一个 ListPlot。因此我想使用 Manipulate。我的代码看起来像这样。

 test1 = Import["/Users/xx/Documents/xxx/test1.csv"];
 test2 = Import["/Users/xx/Documents/xxx/test1.csv"];
 test3 = Import["/Users/xx/Documents/xxx/test1.csv"];

 importList:={test1,test2,test3};
 import:=.;

 Manipulate[
 Show[Plot[MAnt[t], {t, 0, 5}], 
 ListPlot[import]], {import, importList}, LocalizeVariables -> False, TrackedSymbols :>{import}]

我经常用不同功能的图来做这件事,但我不能让它与列表一起工作。有任何想法吗?

Edit1:很明显,Mathematica 将三个列表连接在一起。我可以阻止 Mathematica 这样做吗?

 importList:={"test1","test2","test3"}

也不行。

4

1 回答 1

0

这个简单的例子可能会有所帮助:

data = {{0, 5, 10, 15} , {1, 4, 9, 16}}
Manipulate[ 
       Show[ 
             Plot[t^2, {t, 0, 4}, PlotStyle -> Red], 
             ListPlot[data[[u]], Joined -> True], 
             PlotRange -> {0, 20}
       ], {u, {1, 2}}
]

对于您的另一个问题,如果您不想将您的列表连接在一起,您可以这样做:

test[1] = Import..
test[2] = Import ..

然后在 Manipulate 中使用test[u] (单括号)

于 2013-06-07T18:53:44.373 回答