Gadfly supports advanced plot composition techniques like faceting, stacking, and layering.
It is easy to make multiple plots that all share a common dataset and axis.
using Gadfly, RDatasets
iris = dataset("datasets", "iris")
plot(iris, xgroup="Species", x="SepalLength", y="SepalWidth",
Geom.subplot_grid(Geom.point))
SepalLength by Species
virginica
versicolor
setosa
4
5
6
7
8
4.0
4.2
4.4
4.6
4.8
5.0
5.2
5.4
5.6
5.8
6.0
6.2
6.4
6.6
6.8
7.0
7.2
7.4
7.6
7.8
8.0
3.98
4.00
4.02
4.04
4.06
4.08
4.10
4.12
4.14
4.16
4.18
4.20
4.22
4.24
4.26
4.28
4.30
4.32
4.34
4.36
4.38
4.40
4.42
4.44
4.46
4.48
4.50
4.52
4.54
4.56
4.58
4.60
4.62
4.64
4.66
4.68
4.70
4.72
4.74
4.76
4.78
4.80
4.82
4.84
4.86
4.88
4.90
4.92
4.94
4.96
4.98
5.00
5.02
5.04
5.06
5.08
5.10
5.12
5.14
5.16
5.18
5.20
5.22
5.24
5.26
5.28
5.30
5.32
5.34
5.36
5.38
5.40
5.42
5.44
5.46
5.48
5.50
5.52
5.54
5.56
5.58
5.60
5.62
5.64
5.66
5.68
5.70
5.72
5.74
5.76
5.78
5.80
5.82
5.84
5.86
5.88
5.90
5.92
5.94
5.96
5.98
6.00
6.02
6.04
6.06
6.08
6.10
6.12
6.14
6.16
6.18
6.20
6.22
6.24
6.26
6.28
6.30
6.32
6.34
6.36
6.38
6.40
6.42
6.44
6.46
6.48
6.50
6.52
6.54
6.56
6.58
6.60
6.62
6.64
6.66
6.68
6.70
6.72
6.74
6.76
6.78
6.80
6.82
6.84
6.86
6.88
6.90
6.92
6.94
6.96
6.98
7.00
7.02
7.04
7.06
7.08
7.10
7.12
7.14
7.16
7.18
7.20
7.22
7.24
7.26
7.28
7.30
7.32
7.34
7.36
7.38
7.40
7.42
7.44
7.46
7.48
7.50
7.52
7.54
7.56
7.58
7.60
7.62
7.64
7.66
7.68
7.70
7.72
7.74
7.76
7.78
7.80
7.82
7.84
7.86
7.88
7.90
7.92
7.94
7.96
7.98
8.00
4
6
8
4
5
6
7
8
4.0
4.2
4.4
4.6
4.8
5.0
5.2
5.4
5.6
5.8
6.0
6.2
6.4
6.6
6.8
7.0
7.2
7.4
7.6
7.8
8.0
3.98
4.00
4.02
4.04
4.06
4.08
4.10
4.12
4.14
4.16
4.18
4.20
4.22
4.24
4.26
4.28
4.30
4.32
4.34
4.36
4.38
4.40
4.42
4.44
4.46
4.48
4.50
4.52
4.54
4.56
4.58
4.60
4.62
4.64
4.66
4.68
4.70
4.72
4.74
4.76
4.78
4.80
4.82
4.84
4.86
4.88
4.90
4.92
4.94
4.96
4.98
5.00
5.02
5.04
5.06
5.08
5.10
5.12
5.14
5.16
5.18
5.20
5.22
5.24
5.26
5.28
5.30
5.32
5.34
5.36
5.38
5.40
5.42
5.44
5.46
5.48
5.50
5.52
5.54
5.56
5.58
5.60
5.62
5.64
5.66
5.68
5.70
5.72
5.74
5.76
5.78
5.80
5.82
5.84
5.86
5.88
5.90
5.92
5.94
5.96
5.98
6.00
6.02
6.04
6.06
6.08
6.10
6.12
6.14
6.16
6.18
6.20
6.22
6.24
6.26
6.28
6.30
6.32
6.34
6.36
6.38
6.40
6.42
6.44
6.46
6.48
6.50
6.52
6.54
6.56
6.58
6.60
6.62
6.64
6.66
6.68
6.70
6.72
6.74
6.76
6.78
6.80
6.82
6.84
6.86
6.88
6.90
6.92
6.94
6.96
6.98
7.00
7.02
7.04
7.06
7.08
7.10
7.12
7.14
7.16
7.18
7.20
7.22
7.24
7.26
7.28
7.30
7.32
7.34
7.36
7.38
7.40
7.42
7.44
7.46
7.48
7.50
7.52
7.54
7.56
7.58
7.60
7.62
7.64
7.66
7.68
7.70
7.72
7.74
7.76
7.78
7.80
7.82
7.84
7.86
7.88
7.90
7.92
7.94
7.96
7.98
8.00
4
6
8
4
5
6
7
8
4.0
4.2
4.4
4.6
4.8
5.0
5.2
5.4
5.6
5.8
6.0
6.2
6.4
6.6
6.8
7.0
7.2
7.4
7.6
7.8
8.0
3.98
4.00
4.02
4.04
4.06
4.08
4.10
4.12
4.14
4.16
4.18
4.20
4.22
4.24
4.26
4.28
4.30
4.32
4.34
4.36
4.38
4.40
4.42
4.44
4.46
4.48
4.50
4.52
4.54
4.56
4.58
4.60
4.62
4.64
4.66
4.68
4.70
4.72
4.74
4.76
4.78
4.80
4.82
4.84
4.86
4.88
4.90
4.92
4.94
4.96
4.98
5.00
5.02
5.04
5.06
5.08
5.10
5.12
5.14
5.16
5.18
5.20
5.22
5.24
5.26
5.28
5.30
5.32
5.34
5.36
5.38
5.40
5.42
5.44
5.46
5.48
5.50
5.52
5.54
5.56
5.58
5.60
5.62
5.64
5.66
5.68
5.70
5.72
5.74
5.76
5.78
5.80
5.82
5.84
5.86
5.88
5.90
5.92
5.94
5.96
5.98
6.00
6.02
6.04
6.06
6.08
6.10
6.12
6.14
6.16
6.18
6.20
6.22
6.24
6.26
6.28
6.30
6.32
6.34
6.36
6.38
6.40
6.42
6.44
6.46
6.48
6.50
6.52
6.54
6.56
6.58
6.60
6.62
6.64
6.66
6.68
6.70
6.72
6.74
6.76
6.78
6.80
6.82
6.84
6.86
6.88
6.90
6.92
6.94
6.96
6.98
7.00
7.02
7.04
7.06
7.08
7.10
7.12
7.14
7.16
7.18
7.20
7.22
7.24
7.26
7.28
7.30
7.32
7.34
7.36
7.38
7.40
7.42
7.44
7.46
7.48
7.50
7.52
7.54
7.56
7.58
7.60
7.62
7.64
7.66
7.68
7.70
7.72
7.74
7.76
7.78
7.80
7.82
7.84
7.86
7.88
7.90
7.92
7.94
7.96
7.98
8.00
4
6
8
5.9,3.0
6.2,3.4
6.5,3.0
6.3,2.5
6.7,3.0
6.7,3.3
6.8,3.2
5.8,2.7
6.9,3.1
6.7,3.1
6.9,3.1
6.0,3.0
6.4,3.1
6.3,3.4
7.7,3.0
6.1,2.6
6.3,2.8
6.4,2.8
7.9,3.8
7.4,2.8
7.2,3.0
6.4,2.8
6.1,3.0
6.2,2.8
7.2,3.2
6.7,3.3
6.3,2.7
7.7,2.8
5.6,2.8
6.9,3.2
6.0,2.2
7.7,2.6
7.7,3.8
6.5,3.0
6.4,3.2
5.8,2.8
5.7,2.5
6.8,3.0
6.4,2.7
6.5,3.2
7.2,3.6
6.7,2.5
7.3,2.9
4.9,2.5
7.6,3.0
6.5,3.0
6.3,2.9
7.1,3.0
5.8,2.7
6.3,3.3
5.7,2.8
5.1,2.5
6.2,2.9
5.7,2.9
5.7,3.0
5.6,2.7
5.0,2.3
5.8,2.6
6.1,3.0
5.5,2.6
5.5,2.5
5.6,3.0
6.3,2.3
6.7,3.1
6.0,3.4
5.4,3.0
6.0,2.7
5.8,2.7
5.5,2.4
5.5,2.4
5.7,2.6
6.0,2.9
6.7,3.0
6.8,2.8
6.6,3.0
6.4,2.9
6.1,2.8
6.3,2.5
6.1,2.8
5.9,3.2
5.6,2.5
6.2,2.2
5.8,2.7
5.6,3.0
6.7,3.1
5.6,2.9
6.1,2.9
6.0,2.2
5.9,3.0
5.0,2.0
5.2,2.7
6.6,2.9
4.9,2.4
6.3,3.3
5.7,2.8
6.5,2.8
5.5,2.3
6.9,3.1
6.4,3.2
7.0,3.2
5.0,3.3
5.3,3.7
4.6,3.2
5.1,3.8
4.8,3.0
5.1,3.8
5.0,3.5
4.4,3.2
4.5,2.3
5.0,3.5
5.1,3.4
4.4,3.0
4.9,3.6
5.5,3.5
5.0,3.2
4.9,3.1
5.5,4.2
5.2,4.1
5.4,3.4
4.8,3.1
4.7,3.2
5.2,3.4
5.2,3.5
5.0,3.4
5.0,3.0
4.8,3.4
5.1,3.3
4.6,3.6
5.1,3.7
5.4,3.4
5.1,3.8
5.7,3.8
5.1,3.5
5.4,3.9
5.7,4.4
5.8,4.0
4.3,3.0
4.8,3.0
4.8,3.4
5.4,3.7
4.9,3.1
4.4,2.9
5.0,3.4
4.6,3.4
5.4,3.9
5.0,3.6
4.6,3.1
4.7,3.2
4.9,3.0
5.1,3.5
2.0
2.5
3.0
3.5
4.0
4.5
2.0
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
3.0
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
4.0
4.1
4.2
4.3
4.4
4.5
1.99
2.00
2.01
2.02
2.03
2.04
2.05
2.06
2.07
2.08
2.09
2.10
2.11
2.12
2.13
2.14
2.15
2.16
2.17
2.18
2.19
2.20
2.21
2.22
2.23
2.24
2.25
2.26
2.27
2.28
2.29
2.30
2.31
2.32
2.33
2.34
2.35
2.36
2.37
2.38
2.39
2.40
2.41
2.42
2.43
2.44
2.45
2.46
2.47
2.48
2.49
2.50
2.51
2.52
2.53
2.54
2.55
2.56
2.57
2.58
2.59
2.60
2.61
2.62
2.63
2.64
2.65
2.66
2.67
2.68
2.69
2.70
2.71
2.72
2.73
2.74
2.75
2.76
2.77
2.78
2.79
2.80
2.81
2.82
2.83
2.84
2.85
2.86
2.87
2.88
2.89
2.90
2.91
2.92
2.93
2.94
2.95
2.96
2.97
2.98
2.99
3.00
3.01
3.02
3.03
3.04
3.05
3.06
3.07
3.08
3.09
3.10
3.11
3.12
3.13
3.14
3.15
3.16
3.17
3.18
3.19
3.20
3.21
3.22
3.23
3.24
3.25
3.26
3.27
3.28
3.29
3.30
3.31
3.32
3.33
3.34
3.35
3.36
3.37
3.38
3.39
3.40
3.41
3.42
3.43
3.44
3.45
3.46
3.47
3.48
3.49
3.50
3.51
3.52
3.53
3.54
3.55
3.56
3.57
3.58
3.59
3.60
3.61
3.62
3.63
3.64
3.65
3.66
3.67
3.68
3.69
3.70
3.71
3.72
3.73
3.74
3.75
3.76
3.77
3.78
3.79
3.80
3.81
3.82
3.83
3.84
3.85
3.86
3.87
3.88
3.89
3.90
3.91
3.92
3.93
3.94
3.95
3.96
3.97
3.98
3.99
4.00
4.01
4.02
4.03
4.04
4.05
4.06
4.07
4.08
4.09
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20
4.21
4.22
4.23
4.24
4.25
4.26
4.27
4.28
4.29
4.30
4.31
4.32
4.33
4.34
4.35
4.36
4.37
4.38
4.39
4.40
4.41
4.42
4.43
4.44
4.45
4.46
4.47
4.48
4.49
4.50
2
3
4
5
SepalWidth
Geom.subplot_grid
can similarly arrange plots vertically, or even in a 2D grid if there are two shared axes.
Subplots have some inner and outer elements, including Guides and Scales. For example, place the guide inside Geom.subplot_grid(...)
to change the subplot labels, or outside to change the outer plot labels.
haireye = dataset("datasets", "HairEyeColor")
palette = ["brown", "blue", "tan", "green"]
plot(haireye, y=:Sex, x=:Freq, color=:Eye, ygroup=:Hair,
Geom.subplot_grid(Geom.bar(position=:stack, orientation=:horizontal),
Guide.ylabel(orientation=:vertical) ),
Scale.color_discrete_manual(palette...),
Guide.colorkey(title="Eye\ncolor"),
Guide.ylabel("Hair color"), Guide.xlabel("Frequency") )
Frequency
Brown
Blue
Hazel
Green
Eyecolor
0
50
100
150
0
5
10
15
20
25
30
35
40
45
50
55
60
65
70
75
80
85
90
95
100
105
110
115
120
125
130
135
140
145
150
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
4.5
5.0
5.5
6.0
6.5
7.0
7.5
8.0
8.5
9.0
9.5
10.0
10.5
11.0
11.5
12.0
12.5
13.0
13.5
14.0
14.5
15.0
15.5
16.0
16.5
17.0
17.5
18.0
18.5
19.0
19.5
20.0
20.5
21.0
21.5
22.0
22.5
23.0
23.5
24.0
24.5
25.0
25.5
26.0
26.5
27.0
27.5
28.0
28.5
29.0
29.5
30.0
30.5
31.0
31.5
32.0
32.5
33.0
33.5
34.0
34.5
35.0
35.5
36.0
36.5
37.0
37.5
38.0
38.5
39.0
39.5
40.0
40.5
41.0
41.5
42.0
42.5
43.0
43.5
44.0
44.5
45.0
45.5
46.0
46.5
47.0
47.5
48.0
48.5
49.0
49.5
50.0
50.5
51.0
51.5
52.0
52.5
53.0
53.5
54.0
54.5
55.0
55.5
56.0
56.5
57.0
57.5
58.0
58.5
59.0
59.5
60.0
60.5
61.0
61.5
62.0
62.5
63.0
63.5
64.0
64.5
65.0
65.5
66.0
66.5
67.0
67.5
68.0
68.5
69.0
69.5
70.0
70.5
71.0
71.5
72.0
72.5
73.0
73.5
74.0
74.5
75.0
75.5
76.0
76.5
77.0
77.5
78.0
78.5
79.0
79.5
80.0
80.5
81.0
81.5
82.0
82.5
83.0
83.5
84.0
84.5
85.0
85.5
86.0
86.5
87.0
87.5
88.0
88.5
89.0
89.5
90.0
90.5
91.0
91.5
92.0
92.5
93.0
93.5
94.0
94.5
95.0
95.5
96.0
96.5
97.0
97.5
98.0
98.5
99.0
99.5
100.0
100.5
101.0
101.5
102.0
102.5
103.0
103.5
104.0
104.5
105.0
105.5
106.0
106.5
107.0
107.5
108.0
108.5
109.0
109.5
110.0
110.5
111.0
111.5
112.0
112.5
113.0
113.5
114.0
114.5
115.0
115.5
116.0
116.5
117.0
117.5
118.0
118.5
119.0
119.5
120.0
120.5
121.0
121.5
122.0
122.5
123.0
123.5
124.0
124.5
125.0
125.5
126.0
126.5
127.0
127.5
128.0
128.5
129.0
129.5
130.0
130.5
131.0
131.5
132.0
132.5
133.0
133.5
134.0
134.5
135.0
135.5
136.0
136.5
137.0
137.5
138.0
138.5
139.0
139.5
140.0
140.5
141.0
141.5
142.0
142.5
143.0
143.5
144.0
144.5
145.0
145.5
146.0
146.5
147.0
147.5
148.0
148.5
149.0
149.5
150.0
0
200
Male
Female
Blond