it-swarm.com.de

ggplot2 Handlung ohne Äxte, Legenden usw

Ich möchte das Hexbin des Bioleiters verwenden (was ich tun kann), um ein Diagramm zu erstellen, das den gesamten (png-) Anzeigebereich ausfüllt - keine Achsen, keine Beschriftungen, kein Hintergrund, keine Nüsse.

121
user1320487

Gemäß meinem Kommentar in Chases Antwort können Sie eine Menge dieser Dinge mit element_blank Entfernen:

dat <- data.frame(x=runif(10),y=runif(10))

p <- ggplot(dat, aes(x=x, y=y)) + 
        geom_point() +
        scale_x_continuous(expand=c(0,0)) + 
        scale_y_continuous(expand=c(0,0))   

p + theme(axis.line=element_blank(),axis.text.x=element_blank(),
          axis.text.y=element_blank(),axis.ticks=element_blank(),
          axis.title.x=element_blank(),
          axis.title.y=element_blank(),legend.position="none",
          panel.background=element_blank(),panel.border=element_blank(),panel.grid.major=element_blank(),
          panel.grid.minor=element_blank(),plot.background=element_blank())

Es sieht so aus, als ob sich am Rand der resultierenden .png-Datei noch ein kleiner Rand befindet, wenn ich diese speichere. Vielleicht weiß jemand anderes, wie man auch diese Komponente entfernt.

(Historischer Hinweis: Seit ggplot2 Version 0.9.2 ist opts veraltet. Verwenden Sie stattdessen theme() und ersetzen Sie theme_blank() durch element_blank().)

173
joran

Betreff: Ändern von Optionen zu Themen usw. (für faule Leute):

theme(axis.line=element_blank(),
      axis.text.x=element_blank(),
      axis.text.y=element_blank(),
      axis.ticks=element_blank(),
      axis.title.x=element_blank(),
      axis.title.y=element_blank(),
      legend.position="none",
      panel.background=element_blank(),
      panel.border=element_blank(),
      panel.grid.major=element_blank(),
      panel.grid.minor=element_blank(),
      plot.background=element_blank())
98
mbjoseph

Aktuelle Antworten sind entweder unvollständig oder ineffizient. Hier ist (vielleicht) der kürzeste Weg, um das Ergebnis zu erzielen (mit theme_void():

data(diamonds) # Data example
ggplot(data = diamonds, mapping = aes(x = clarity)) + geom_bar(aes(fill = cut)) +
      theme_void() + theme(legend.position="none")

Das Ergebnis ist:

enter image description here


Wenn Sie daran interessiert sind, nur die Bezeichnungen zu entfernen, macht labs(x="", y="") den Trick:

ggplot(data = diamonds, mapping = aes(x = clarity)) + geom_bar(aes(fill = cut)) + 
      labs(x="", y="")
45
luchonacho
'opts' is deprecated.

im ggplot2 >= 0.9.2 verwenden

p + theme(legend.position = "none") 
40
Jonas Stein
xy <- data.frame(x=1:10, y=10:1)
plot <- ggplot(data = xy)+geom_point(aes(x = x, y = y))
plot
panel = grid.get("panel-3-3")

grid.newpage()
pushViewport(viewport(w=1, h=1, name="layout"))
pushViewport(viewport(w=1, h=1, name="panel-3-3"))
upViewport(1)
upViewport(1)
grid.draw(panel)
1
amaurel