J'utilise ggplot
pour créer plusieurs boxplots à partir des données suivantes:
df<-(structure(list(Effect2 = c("A2", "A2", "A2", "A2", "A2", "A2",
"A2", "A2", "A2", "A2", "A2", "A2", "A2", "A2", "A1", "A1", "A1",
"A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1",
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3",
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3",
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3",
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3",
"A3", "A3", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1",
"B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1",
"B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1",
"B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1",
"B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1",
"B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1",
"B1", "B1", "B1", "B1", "B1", "B1", "B1", "B1", "C3", "C3", "C3",
"C3", "C3", "C3", "C3", "C3", "C3", "C3", "C3", "C3", "C3", "C3",
"C3", "C3", "C3", "C3", "C3", "C3", "C3", "C3", "C2", "C2", "C2",
"C2", "C2", "C2", "C2", "C4", "C4", "C4", "C4", "C4", "C4", "C4",
"C4", "C4", "C4", "C4", "C1", "C1", "C1", "C1", "C1", "C1", "C1",
"C1", "C1", "C1", "C1", "C1", "C1", "C1", "C1", "C1", "C1", "C1",
"C1", "C1", "C1", "C1", "D1", "D1", "D1", "D1", "D1", "D1", "D1",
"D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1",
"D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1",
"D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1",
"D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1", "D1",
"E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1",
"E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1", "E1",
"E1", "E1", "E1", "E1", "F1", "F1", "F1", "F1", "F1", "F1", "F1",
"F1", "F1", "F1", "F1", "F1", "F1", "F1", "F1", "F1", "F1", "F1",
"F1", "F1", "G1", "G1", "G1", "G1", "G1", "G1", "G1", "G1", "G1",
"G1", "G1", "G1", "G1", "G1", "G1", "G1", "G1", "G1", "G2", "H1",
"H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1",
"H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1", "H1",
"H1", "H1", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2",
"H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2",
"H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2",
"H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2", "H2",
"H2", "H2", "H2", "H2", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3", "H3",
"H3", "H3", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4",
"H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4",
"H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4",
"H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4", "H4"
), OddsRatioEst = c(0.07, 17.79, 3.16, 4.57, 5.34, 0.09, 0.15,
0.1, 0.41, 2.16, 2.17, 0.2, 4.32, 5.94, 0.09, 3.28, 10.37, 8.49,
3.15, 0.15, 0.15, 0.34, 13.78, 0.08, 0.04, 6.01, 0.08, 0.07,
3.63, 7.92, 2.71, 11.41, 12.52, 80.85, 4.72, 3.4, 6.25, 12.05,
8.7, 2.28, 3.63, 2.83, 2.36, 3.81, 12.73, 7.77, 3.15, 3.24, 51.21,
6.99, 7.05, 3.39, 1.93, 4.6, 4.55, 16.3, 41.46, 1.99, 2.07, 2.27,
9.94, 8.35, 3.27, 4.41, 5, 5.35, 11.47, 4.05, 3.06, 3.05, 8.45,
2.68, 2.45, 4.41, 25.53, 3.74, 18.2, 2.27, 4.19, 2.69, 13.24,
8.31, 12.96, 8.46, 11.22, 5.28, 18.88, 5.58, 5.96, 3.98, 8.46,
2.23, 102.55, 6.48, 2.64, 3.78, 4.25, 3.64, 4.21, 5.19, 2.43,
6.79, 2.68, 10.31, 7.44, 11.89, 5.53, 16.65, 5.99, 9.37, 19.29,
5.12, 2.42, 2.98, 11.38, 14.45, 3.72, 4.38, 19.8, 6.29, 6.74,
9.77, 11.78, 22.23, 3.61, 4.77, 12.05, 7.13, 35.14, 84.47, 8.99,
10.16, 8.79, 11.21, 9.27, 130.54, 5.09, 22.14, 34.78, 11.93,
46.06, 4.84, 8.79, 36.47, 15.92, 20.78, 0.07, 0.18, 0.17, 0.36,
0.23, 0.57, 0.17, 0.41, 0.15, 0.2, 0.58, 0.62, 0.08, 0.53, 2.68,
0.14, 0.37, 0.19, 0.25, 0.33, 1.68, 0.13, 7.93, 7.77, 108.84,
6.82, 7.12, 14.64, 2016.8, 4.94, 2.86, 3, 74.58, 6.96, 11.82,
3.43, 3.02, 17.94, 40.41, 11.23, 3.32, 0.44, 0.51, 0.43, 0.02,
4.42, 4.74, 2.65, 1.77, 3.58, 0.34, 2.49, 1.68, 4.58, 2.62, 13.75,
0.48, 1.59, 0.01, 0.13, 0.1, 17.42, 11.34, 17.29, 3.32, 6.82,
7.06, 4.96, 3.04, 10.39, 0.29, 2.5, 3.39, 7.27, 19.25, 6.54,
14.29, 101.56, 11.86, 24.13, 12.77, 6.21, 9.35, 5.09, 8.72, 9.93,
2.77, 16.64, 6.64, 4.51, 11.98, 6.99, 2.69, 2.93, 4.54, 3.35,
2.48, 10.31, 1.69, 160.8, 7.69, 2.73, 37.65, 220.84, 14.02, 4.18,
158.82, 25.92, 10.85, 7.29, 24.36, 7.16, 64.93, 3.25, 2.95, 1.72,
1.71, 3.66, 2.34, 3.49, 0.24, 3.67, 2.94, 0.11, 1.52, 2.09, 1.61,
1.55, 1.59, 2.5, 0.19, 4.1, 2.65, 2.59, 1.29, 11.68, 4.81, 0.09,
3.14, 2.08, 0.01, 0.11, 0.27, 8.01, 5.59, 0.46, 0.33, 4.32, 0.47,
2.27, 0.02, 0.11, 0.23, 4.13, 1.98, 12.67, 0.24, 7.55, 5.79,
0.01, 5.85, 0.02, 19.41, 6.51, 0.51, 0.04, 3.26, 0.12, 6.34,
0.25, 0.07, 0.06, 13.71, 1.85, 277.25, 111.76, 548.23, 30.23,
4.63, 3.04, 5.23, 5.37, 0.16, 4.53, 0.09, 0.13, 2.05, 2.04, 2.64,
11.35, 2.47, 29.4, 0.26, 2.1, 1.83, 0.85, 7.33, 4.84, 0.1, 22.84,
31.24, 18.17, 4.08, 5.32, 11.99, 6.21, 0.26, 15.2, 16.84, 2.55,
12.22, 3.2, 14.25, 0.02, 2.62, 0.38, 4.64, 23.27, 2.47, 6.57,
2.41, 8.64, 2.4, 7.06, 4.8, 167.14, 3.05, 27.73, 25.86, 5.84,
4.68, 5.1, 11.55, 10.55, 44.11, 21.53, 7.95, 6.06, 9.41, 26.45,
24.42, 6.95, 79.77, 120.19, 67.39, 5.79, 23.37, 234.51, 41.03,
10.67, 11.29, 13.07, 56.72, 86.03, 723.44, 40.78, 238.65, 12.76,
765.98, 42.38, 13.33, 30.93, 12.92, 12.8, 15.5, 104.96, 15.69,
111.41, 47.93, 17.37, 94.1, 32.88, 58.79, 31.44, 7.7, 81.19,
84.48, 411.86, 69.94, 17.27, 21.52, 35.4, 15.74, 5.52, 15.03,
31, 24.32, 29.6, 23.08, 251.96, 8257.41, 43.17, 237.92, 9.05,
61.38, 5.65, 15.66, 7.87, 302850763, 13.21, 81.4, 31.63, 69.81,
10.89, 192.84, 168.78, 389.25, 7.08, 18.41, 53.07, 5.82, 128.07,
50.1, 142.92, 26.9, 629.3, 28.91, 1006.21, 2349.3, 320.77, 136.88,
115.99, 15, 4884.28, 9.97, 5.91, 6.08, 5.11, 7.39, 7.68, 4.77,
5.42, 3.49, 4.16, 11.32, 0, 4.01, 4.91, 9.08, 18.33, 10.86, 12.95,
10.64, 6.03, 2.71, 4.93, 7.64, 345.75, 24, 3.92, 4.48, 9.36,
1.22, 4, 30.22, 31.37, 56.32, 25.68, 5.42, 66, 15.03, 9.75, 27.1,
9.36, 74.58, 21.51)), .Names = c("Effect2", "OddsRatioEst"), class = "data.frame", row.names = c(NA,
-512L))
Il y a plusieurs valeurs extrêmes dans les données qui étirent l'axe des y pour que le graphique soit complètement inutile:
J'ai changé les limites y avec ce qui suit:
ggplot(df, aes(x=Effect2, y=OddsRatioEst)) + geom_boxplot(outlier.colour=NA) +
scale_y_continuous(limits=c(0,100), breaks=seq(0,100,10), expand = c(0, 0))
qui semble mieux,
mais cela produit l'avertissement suivant:
Warning message:
Removed 37 rows containing non-finite values (stat_boxplot)
et je me rends compte qu'en fait, les boîtes à moustaches sont redimensionnées, mais je fixe mes limites - par exemple les valeurs de Q1, Q2 et Q3 sont réduites. Comment puis-je obtenir une véritable représentation des boîtes à moustaches sans inclure de grandes valeurs aberrantes?
Utilisation coord_cartesian
au lieu de scale_y_continuous
:
ggplot(df, aes(x=Effect2, y=OddsRatioEst)) +
geom_boxplot(outlier.colour=NA) +
coord_cartesian(ylim = c(0, 100))
Du coord_cartesian
Documentation:
La définition de limites sur le système de coordonnées fera un zoom sur le tracé (comme si vous le regardiez avec une loupe) et ne changerait pas les données sous-jacentes comme le ferait la définition de limites sur une échelle.
La sortie est la suivante. Comme vous pouvez le voir, ne pas supprimer ces valeurs aberrantes modifie quelque peu l'image, vous pouvez donc également modifier la limite y.