7 Stimmen

An die Notebook-Breite anpassen ImageSize in Mathematica

Gibt es ein Argument für ImageSize, so dass die Grafiken oder Manipulationen automatisch an die Notebookbreite angepasst werden.

9voto

acl Punkte 6442

Wie wäre es mit

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

EDIT: oder

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

5voto

abcd Punkte 41265

Hier ist eine weitere Möglichkeit neben der Lösung von Acl:

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

Der Nachteil bei diesem Ansatz ist, dass der Raum auf der linken Seite (wo Sie die In[10]:= usw.) ist konstant und ändert sich nicht mit der Breite des Notebooks. Der Prozentsatz der Breite, den ich oben verwendet habe, hängt also von der Breite Ihres Notebooks ab. Es ist möglich, das zu kompensieren, aber ich werde das nicht tun. Sobald Sie jedoch Ihre Breite festgelegt und einen optimalen Wert gefunden haben, sollte es gut sein.

Dies ist in Fällen nützlich, in denen Sie die Abmessungen/Koordinaten explizit angeben müssen und keine Option wie Full .

5voto

Verbeia Punkte 4380

Für zwei nebeneinander liegende Grafikobjekte verwenden Sie die ImageSize Option zu 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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X