Fit to Notebook Ширина изображения в Mathematica - PullRequest
6 голосов
/ 18 ноября 2011

Есть ли аргумент для ImageSize, чтобы Графика или Манипулирование автоматически соответствовали ширине ноутбука.

Ответы [ 3 ]

9 голосов
/ 18 ноября 2011

Как насчет

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}
 ]
5 голосов
/ 18 ноября 2011

Для двух графических объектов рядом используйте параметр 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}]

enter image description here

4 голосов
/ 18 ноября 2011

Вот еще один вариант, кроме решения Acl:

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

Недостаток этого подхода заключается в том, что пространство слева (где у вас есть In[10]:= и т. Д.) Является постоянным и неизменить с шириной ноутбука.Поэтому процент ширины, который я использовал выше, будет варьироваться в зависимости от ширины вашего ноутбука.Это можно компенсировать, но я не собираюсь этого делать.Однако, как только вы исправите свою ширину и найдете подходящее место, это будет хорошо.

Это полезно в тех случаях, когда вам нужно явно указать размеры / координаты, и вы не можете использовать опцию, такую ​​как Full,

...