Programsal olarak bir ggplot'un kaç yönü olduğunu nasıl anlayabilirim?


13

Kod ve grafik aşağıdadır.

Grafiğin üç yönü vardır. Nerede the_plotüç yönü olduğunu bulabilirim? Evet, bunu mtcarsveri çerçevesinden alabilirim veya the_plot$dataveri analizini yeniden oluşturmak istemiyorum. Bunun yerine, grafik öğelerini incelemek istiyorum the_plot, bu yüzden uygulama mantığını birden fazla yerde çoğaltmak zorunda değilim. the_plot$facettanıdığım hiçbir şeyi göstermez, diğer çizim değişkenlerini göstermez.

Tidyverse 1.3.0 kullanıyorum.

library(tidyverse)
data(mtcars)
the_plot<-ggplot(mtcars, aes(mpg, disp, group=cyl)) + facet_wrap(~cyl) + geom_point()
the_plot

yönlü arsa


Muhtemelen ggplot_build(the_plot)$layout$layoutgelen stackoverflow.com/questions/44107119/...
MrFlick

Bazı ayrıntılar ekleyin the_plot, grafiğinizde gördüğünüz şey değil, çizilmek istediğiniz şeyin açıklaması (veri, harita, tema vb.). the_plotKonsolda yazdığınızda , gerçekten araıyorsunuz print(the_plot), bu da ölçeklerin, fasetlerin sayısı ve konumu vb.
MrGumble

Yanıtlar:


12

ggplot verilerine gg_build () - işleviyle erişebilirsiniz

out <- ggplot_build(the_plot)

length(levels(out$data[[1]]$PANEL))
[1] 3

8

Diğer yöntem

library(ggplot2)
data(mtcars)
the_plot<-ggplot(mtcars, aes(mpg, disp, group=cyl)) + facet_wrap(~cyl) + geom_point()
pb <- ggplot_build(the_plot)
pb$layout$layout$PANEL
#> [1] 1 2 3
#> Levels: 1 2 3

2020-04-21 tarihinde reprex paketi tarafından oluşturuldu (v0.3.0)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.