Pouvez-vous changer les proportions du graphique ggplot2 de carré en rectangle?
Je suis en utilisant geom_segment
de tracer une ligne du temps de l'activité. C'est sur la même ligne, et depuis je veux la présenter avec d'autres graphes, je préfère faire de l'axe y, beaucoup plus petite. Il semble que la taille de la zone grise du graphique dans ggplot2 est toujours en place bien que, si je échelle plus grande ou plus petite. Est-il un moyen de dire que je veux que x=500 y=50 ou quelque chose comme ça?
df2 <- structure(list(Activities =
structure(c(2L, 1L, 2L, 1L, 2L, 3L, 1L, 2L, 2L, 2L, 2L, 5L,
4L, 3L, 2L, 2L),
.Label = c("authoring", "hacking", "learning",
"surfing", "tasks"),
class = "factor"),
Start = c(14895L, 15005L, 16066L, 16226L, 16387L, 16394L,
27030L,27532L, 27600L, 27687L, 28660L, 28713L,
29154L, 30264L, 30345L, 32245L),
End = c(15005L, 16066L, 16226L, 16387L,16394L, 16509L,
27491L, 27591L, 27628L, 28450L, 28704L, 29109L,
30250L, 30345L, 31235L, 33794L)),
.Names = c("Activities", "Start", "End"),
class = "data.frame", row.names = c(NA, -16L))
a <- 0:23
Ici ma parcelle:
ggplot(df2, aes(colour=Activities)) +
geom_segment(aes(x=Start, xend=End, y=0, yend=0), size=10) +
scale_x_continuous(breaks=a * 60 * 60, labels=a) +
xlab("Time") + ylab("") +
scale_y_continuous(breaks=NULL, limits=c(-.1, .1))
source d'informationauteur Stian Håklev
Vous devez vous connecter pour publier un commentaire.
De fixer le rapport sur les axes x et y à une certaine valeur (par exemple 1, soit 0,2), vous pouvez utiliser
coord_fixed()
:où
g
est votre parcelle d'origine. Vous devez jouer un peu pour obtenir ce dont vous avez besoin. En outre, comme @Andrie dit, vous pouvez également fixer la taille du canvas, par exemple, à l'aide deggsave
:J'avais essayer les deux, ou peut-être de les combiner. Voir aussi ce précédent post.