Ich erstelle ein Balkendiagramm, für das Balken als Hinweis auf die horizontale (x) Platzierung ausreichen. Daher möchte ich vermeiden, die überflüssigen vertikalen Gitterlinien zu zeichnen.
Ich verstehe, wie man die kleinen und großen Gitterlinien in opts () stylt, aber ich kann für mein ganzes Leben nicht herausfinden, wie man nur die vertikalen Gitterlinien unterdrückt.
library(ggplot2)
data <- data.frame(x = 1:10, y = c(3,5,2,5,6,2,7,6,5,4))
ggplot(data, aes(x, y)) +
geom_bar(stat = 'identity') +
opts(
panel.grid.major = theme_line(size = 0.5, colour = '#1391FF'),
panel.grid.minor = theme_line(colour = NA),
panel.background = theme_rect(colour = NA),
axis.ticks = theme_segment(colour = NA)
)
An diesem Punkt sieht es so aus, als müsste ich alle Gitterlinien unterdrücken und sie dann mit geom_hline () zurückziehen, was wie ein Schmerz erscheint (außerdem ist nicht ganz klar, wie ich das Häkchen finden kann / Hauptgitterlinienpositionen, die an geom_hline () weitergeleitet werden sollen.)
Irgendwelche Gedanken wären dankbar!
Please use breaks = NULL to remove breaks in the scale. (Deprecated; last used in version 0.8.9)
scale_x_discrete(breaks = NULL)
ist diejenige, die verwendet werden soll, wenn die x-Variable diskret ist.Ab ggplot2 0.9.2 ist die Verwendung von "Themen" viel einfacher geworden . Sie können jetzt Themen wie panel.grid.major.x und panel.grid.major.y separat zuweisen, wie unten gezeigt.
# simulate data for the bar graph data <- data.frame( X = c("A","B","C"), Y = c(1:3) ) # make the bar graph ggplot( data ) + geom_bar( aes( X, Y ) ) + theme( # remove the vertical grid lines panel.grid.major.x = element_blank() , # explicitly set the horizontal lines (or they will disappear too) panel.grid.major.y = element_line( size=.1, color="black" ) )
Das Ergebnis dieses Beispiels sieht ziemlich hässlich aus, zeigt jedoch, wie die vertikalen Linien entfernt werden, während die horizontalen Linien und Häkchen auf der x-Achse erhalten bleiben.
quelle
Error: stat_count() must not be used with a y aesthetic.
Dies lässt Sie nur mit den Datenpunkten:
ggplot(out, aes(X1, X2)) + geom_point() + scale_x_continuous(breaks = NULL) + scale_y_continuous(breaks = NULL) + opts(panel.background = theme_blank()) + opts(axis.title.x = theme_blank(), axis.title.y = theme_blank())
quelle
Kopieren meiner Antwort aus einem verwandten Thread,
quelle