2011-09-15 9 views
5

Come si fa a Mathematica esportare uno di grafica. Non mi piace come lo GraphicsRow gestisca la grafica, tutti i rapporti di aspetto e i paddings nelle figure siano incasinati. Quello che mi piace fare è lavorare con ogni singola figura e poi usare un semplice , Column o Grid per combinare le mie figure. Prendiamo ad esempio il seguente esempio:Esportare una riga di oggetti grafici interrotti in MMA8

g1 = Plot[Sin[x], {x, -Pi, Pi}, 
     Frame -> True, FrameLabel -> {"x", "y"}, ImageSize -> 2.6*72 
    ] 

Questo crea la trama Sin. Quello che voglio fare ora è creare la seguente figura:

Fig = Row[{g1, g1, g1}] 

output

quindi è possibile utilizzare Export

Export["TestFig.pdf", Fig] 

Questo è il pdf ottengo in MMA8:

output

Ho appena provato questo codice in MMA7 e funziona bene. Era da un po 'che non volevo creare questo tipo di figure e non mi ero mai preso la briga di verificare se funzionasse in MMA8. Qualcuno ha una soluzione per questo in MMA8?

L'uscita desiderata è quella che ottenuto in MMA7:

desired Output

+3

['Row'] (http://reference.wolfram.com/mathematica/ref/Row.html) esegue automaticamente il wrapping su una determinata larghezza della linea. Se usi 'Grid' o' GraphicsRow' o 'GraphicsGrid', ecc ... allora non avrai questo problema. – Simon

risposta

6

Vale la pena ricordare che GraphicsGridassumes equal-width columns modo da utilizzare Grid è talvolta più utile. Si applica la stessa sintassi della risposta di Belisario. Potrebbe essere utile esplorare l'opzione ImageSize su Export (vedere documentation e tutorial).

Inoltre, si noti che l'esportazione in formato PDF utilizza PrintingStyleEnvironment, che non è il modo in cui le cose appaiono sullo schermo. È possibile ottenere risultati migliori se si modifica l'impostazione della pagina in Impostazioni di stampa.

+1

Buona nota sull'ambiente di stampa: 'SetOptions [$ FrontEnd, PrintingStyleEnvironment ->" Working "]' esporta le cose nello stesso modo in cui appaiono sullo schermo. Grazie, 'Grid' mi dà gli stessi risultati in MM8 come in MM7. – jmlopez

4
Export["c:\\TestFig.pdf", GraphicsGrid[{{g1, g1, g1}}]] 

enter image description here

+0

GraphicsGrid esporta la figura nel modo previsto ma nota come ci sia spazio tra una figura e l'altra. In qualche modo non riesco mai a espandere i miei grafici come dovrebbero quando utilizzo 'GraphicsGrid',' GraphicsRow' o 'GraphicsColumn'. In ogni caso, il commento scritto da simon risolve il problema. Se utilizzo 'Grid' in MM8, ottengo lo stesso risultato di MM7. – jmlopez

+0

@jmlopez Buono a sapersi hai risolto il problema. Non ho notato la differenza tra la tua produzione desiderata e la mia fino ad ora. Scusa –

Problemi correlati