2016-11-17 4 views
2

Ich möchte eine Figur erstellen, die mehrere Plots enthält. Ich möchte jedoch, dass jedes Grundstück eine andere Größe haben kann. Zum Beispiel möchte ich, dass der erste Teilplot ungefähr doppelt so breit ist wie der zweite Teilplot. Ich hatte gehofft, etwas in der Art zu tun:Julia: Wie erstellt man Subplots mit verschiedenen Größen mit PyPlot?

using PyPlot 

a = rand(500,900) 
b = rand(500,400) # notice how 'a' is 900 in width and 'b' is 400, i.e. 'a' is approximately twice as wide as 'b' 

figure(1) 
subplot(2,5,1:2) ; imshow(a) 
subplot(2,5,3) ; imshow(b) 
# and so on... 

Aber das scheint nicht zu funktionieren. Kennt jemand eine Methode, mit der ich die Größe jedes Unterplots anpassen kann?

Antwort

1

Diese Art der Sache ist viel einfacher mit Plots.jl. Siehe z.B. der @layout Befehl in einem der ersten Beispiele in the documentation.

3

Ähnlich wie bei matlab ist es möglich, Teilplots unterschiedlicher Größe im selben Zahlenfenster zu haben, solange sie sich nicht überlappen und sie als gültiges Element in einem gültigen Raster definiert sind. zB:

julia> subplot(2,2,1); imshow(a); 
julia> subplot(2,4,3); imshow(b); # note the different grid size 

Wenn Sie jedoch eine genauere Kontrolle wollen, verlassen Sie dann den Befehl subplot zusammen, und manuell Achsen ziehen, wo Sie sie direkt wollen:

julia> axes([0.05, 0.55, 0.5, 0.4]); imshow(a); 
julia> axes([0.6, 0.55, 0.35, 0.4]); imshow(b); 
+0

Und wenn Sie etwas sind wie ich, aus meiner erfahrung mit matlab, sobald sie das hoch von völlig die kontrolle über ihre achse und anmerkungen erreicht haben, werden sie den subplot-befehl nie wieder für ernste arbeiten verwenden, außer wenn sie etwas schnell und schnell testen wollen schmutzig nebeneinander und Sie kümmern sich nicht um die Feinabstimmung. : p –

Verwandte Themen