Graphics 调整Mathematica中用于ListAnimate的图像列表的大小

Graphics 调整Mathematica中用于ListAnimate的图像列表的大小,graphics,animation,wolfram-mathematica,Graphics,Animation,Wolfram Mathematica,假设我们有一个图像列表,如下所示: imageList = Table[Plot[Sin[k*x], {x, 0, 2 Pi}], {k, 1, 4, .05}]; 我们可以这样设置这些图像的动画: ListAnimate[imageList] 但是现在假设我们想要更大的动画。 我们可以将ImageSize选项粘贴到用于生成图像的Plot命令中,但假设不允许篡改imageList 我们可以手动调整列表动画中每个帧的大小。 这是可行的,但我们怎样才能不那么乏味地完成呢?你的问题让我有点困惑

假设我们有一个图像列表,如下所示:

imageList = Table[Plot[Sin[k*x], {x, 0, 2 Pi}], {k, 1, 4, .05}];
我们可以这样设置这些图像的动画:

ListAnimate[imageList]
但是现在假设我们想要更大的动画。 我们可以将ImageSize选项粘贴到用于生成图像的Plot命令中,但假设不允许篡改imageList

我们可以手动调整列表动画中每个帧的大小。
这是可行的,但我们怎样才能不那么乏味地完成呢?

你的问题让我有点困惑

    ListAnimate[Table[Plot[x^n, {x, -5, 5}, ImageSize -> {100 n, 75 n}], {n, 1, 5}]]
这对我来说很好,因为它可以用指定的大小绘制图像。我承认,这个例子有点混乱。ListAnimate命令还会生成一个框架足够大的面板,以容纳本例中最大的图形


如果我为你回答了错误的问题,请再次发帖,这是我的专长之一。

我对你的问题有点困惑

    ListAnimate[Table[Plot[x^n, {x, -5, 5}, ImageSize -> {100 n, 75 n}], {n, 1, 5}]]
这对我来说很好,因为它可以用指定的大小绘制图像。我承认,这个例子有点混乱。ListAnimate命令还会生成一个框架足够大的面板,以容纳本例中最大的图形

如果我回答了错误的问题,请再次发帖,这是我的专长之一。

关键选项是。您可以将其与各种绘图命令以及
Show
Export
一起使用。
ImageSize
可以表示为
{,}
(其中可以是
Automatic
,根据
AspectRatio
设置另一个图像大小),也可以表示为
,它是
{,Automatic}
的缩写。简言之,你可以做像这样的事情

gfx = Plot[x^2, {x, 0, 1}, ImageSize -> 200]
Show[gfx, AspectRatio -> 1, ImageSize -> {Automatic, 100}]
如果你真的想控制图形布局,你需要开始玩
ImagePadding
PlotRangePadding
的游戏,但是如果你朝这个方向走的话,要做好头发变灰的准备

编辑:对于已经在
imageList
中生成的图形的特定情况,所有这些图形都是这样组合在一起的

ListAnimate[Show[#, ImageSize->800]& /@ imageList]
关键的选择是。您可以将其与各种绘图命令以及
Show
Export
一起使用。
ImageSize
可以表示为
{,}
(其中可以是
Automatic
,根据
AspectRatio
设置另一个图像大小),也可以表示为
,它是
{,Automatic}
的缩写。简言之,你可以做像这样的事情

gfx = Plot[x^2, {x, 0, 1}, ImageSize -> 200]
Show[gfx, AspectRatio -> 1, ImageSize -> {Automatic, 100}]
如果你真的想控制图形布局,你需要开始玩
ImagePadding
PlotRangePadding
的游戏,但是如果你朝这个方向走的话,要做好头发变灰的准备

编辑:对于已经在
imageList
中生成的图形的特定情况,所有这些图形都是这样组合在一起的

ListAnimate[Show[#, ImageSize->800]& /@ imageList]

以下是对当前措辞的问题的一个可行答案,感谢和的初始答案:


以下是对当前措辞的问题的一个可行答案,感谢和的初始答案:


现在我也被我的问题弄糊涂了!我想图像大小毕竟是有用的。我从一个我不想篡改的函数中获取图像,但我现在看到我可以只做ListAnimate[Show[#,ImageSize->600]&/@imageList]。我会试着澄清这个问题和/或将其作为一个答案。马克,非常感谢你的帮助,尽管这个问题很糟糕!现在我也被我的问题弄糊涂了!我想图像大小毕竟是有用的。我从一个我不想篡改的函数中获取图像,但我现在看到我可以只做ListAnimate[Show[#,ImageSize->600]&/@imageList]。我会试着澄清这个问题和/或将其作为一个答案。马克,非常感谢你的帮助,尽管这个问题很糟糕!图像大小与显示是关键!我现在要重写这个问题。很抱歉,第一个版本很糟糕。现在一切都有意义了——无法理解您是如何从以下内容开始遗漏ImageSize:)。但是,是的,
Show
对于重新格式化图形通常是很好的。再次感谢你,Janus。如果您想在Show/@imageList技巧中进行编辑(请参见我的答案),我会将其标记为已接受的答案。带Show的ImageSize是关键!我现在要重写这个问题。很抱歉,第一个版本很糟糕。现在一切都有意义了——无法理解您是如何从以下内容开始遗漏ImageSize:)。但是,是的,
Show
对于重新格式化图形通常是很好的。再次感谢你,Janus。如果你想在Show/@imageList技巧中进行编辑(参见我的答案),我会将此标记为已接受的答案。此问题的原始版本不是正确的问题。我向Janus和High Performance Mark致歉,他们在我修复之前回答了我的问题。非常感谢他们的帮助。这个问题的原始版本不是正确的。我向Janus和High Performance Mark致歉,他们在我修复之前回答了我的问题。非常感谢他们的帮助。