【问题标题】:Fit to Notebook Width ImageSize in Mathematica在 Mathematica 中适合笔记本宽度 ImageSize
【发布时间】:2011-11-17 23:36:38
【问题描述】:

是否有 ImageSize 的参数以使 Graphics 或 Manipulate 自动适应笔记本宽度。

【问题讨论】:

    标签: graphics wolfram-mathematica


    【解决方案1】:

    怎么样

    Plot[Sin[x], {x, -5, 5}, ImageSize -> Full]
    

    编辑:或

    Manipulate[
     Show[
      {
       Plot[Sin[alpha*x], {x, -5, 5}],
       Plot[Cos[alpha*x], {x, -5, 5}]
       },
      ImageSize -> Full
      ],
     {alpha, 1, 2}
     ]
    

    【讨论】:

    • 谢谢你,我怎么能用它来操作里面有 2 个 Graphics 对象?
    【解决方案2】:

    这是Acl解决方案之外的另一种选择:

    width := 0.85Cases[NotebookGet[], (WindowSize -> {x_, _}) -> x]
    Plot[Sin[x], {x, -5, 5}, ImageSize -> {width, Automatic}]
    

    这种方法的缺点是左边的空间(你有In[10]:=等)是恒定的,不会随着笔记本的宽度而改变。所以我上面使用的宽度百分比会根据你笔记本的宽度而有所不同。有可能弥补这一点,但我不会这样做。但是,一旦你确定了宽度并找到了最佳位置,它应该会很好。

    这在您需要明确提供尺寸/坐标并且不能使用像Full 这样的选项的情况下很有用。

    【讨论】:

      【解决方案3】:

      对于两个并排的图形对象,使用ImageSize 选项到GraphicsRow

      Manipulate[
       GraphicsRow[{Show[{Plot[Sin[alpha*x], {x, -5, 5}], 
           Plot[Cos[alpha*x], {x, -5, 5}]}], 
         Show[{Plot[Sin[alpha*x], {x, -5, 5}], 
           Plot[Cos[beta*x], {x, -5, 5}]}]}, ImageSize -> Full], {alpha, 1, 
        2}, {beta, 1, 2}]
      

      【讨论】:

        猜你喜欢
        • 2011-02-18
        • 2011-12-23
        • 2011-06-21
        • 2015-03-29
        • 2015-06-17
        • 2023-04-05
        • 1970-01-01
        • 2011-09-28
        • 2012-05-31
        相关资源
        最近更新 更多