मेरा डीएफ इस तरह दिखता है:

Sede
<chr>
Mes
<S3: POSIXct>
n
<int>
Las Heras   2019-01-01  54      
Las Heras   2019-02-01  53      
Las Heras   2019-03-01  60      
Las Heras   2019-04-01  56      
Las Heras   2019-05-01  77      
Las Heras   2019-06-01  98      
Las Heras   2019-07-01  103     
Las Heras   2019-08-01  88      
Las Heras   2019-09-01  72      
Las Heras   2019-10-01  75      
Las Heras   2019-11-01  87      
Las Heras   2019-12-01  52      
Saavedra    2019-01-01  50      
Saavedra    2019-02-01  50      
Saavedra    2019-03-01  62      
Saavedra    2019-04-01  89

और बारप्लॉट के लिए मेरा कोड:

ggplot(total_screening_mensual, aes(x = Mes, y = n, fill = Sede)) +
                geom_col(position = "dodge") +
                scale_fill_brewer(palette="Pastel1") +
              geom_text(aes(group = Sede, label = n), position = position_dodge2(width = 1), hjust = 0, vjust = .5, size = 3) +
                        coord_flip() +
                        labs(title = "Estudios de screening por sede durante 2019",
                    x = "Mes",
                    y = "Cantidad de estudios") 

मेरी साजिश:

enter image description here

मैं चाहता हूं कि पाठ प्रत्येक कॉलम के साथ संरेखित हो, लेकिन संख्याओं को चकमा नहीं दे सकता। मैंने कई समान प्रश्नों की जाँच की है, लेकिन कोई भी उत्तर इस समस्या को हल करने के लिए प्रतीत नहीं होता है और मुझे समझ नहीं आ रहा है कि मैं इसे कहाँ गलत कर रहा हूँ ...

0
Ale Rey 2 अक्टूबर 2020, 18:54

1 उत्तर

सबसे बढ़िया उत्तर

समस्या यह है कि आप निरंतर अक्ष पर पाठ को चकमा देने का प्रयास कर रहे हैं (आपका फ़्लिप किया गया x अक्ष एक डेटाटाइम अक्ष है), जबकि आप शायद इसे असतत अक्ष बनाना चाहते हैं। तो आप कुछ ऐसा कर सकते हैं:

ggplot(total_screening_mensual, 
       aes(x = factor(Mes), y = n, fill = Sede)) +
  geom_col(position = position_dodge(width = 1)) +
  scale_fill_brewer(palette = "Pastel1") +
  geom_text(aes(label = n, group = Sede), 
            position = position_dodge(width = 1), 
            hjust = -0.2, vjust = 0.5, size = 3) +
  coord_flip() +
  scale_x_discrete(labels = function(x) strftime(x, "%b %Y")) +
  labs(title = "Estudios de screening por sede durante 2019",
       x = "Mes",
       y = "Cantidad de estudios") 

enter image description here


डेटा

total_screening_mensual <- 
  structure(list(Sede = c("Las Heras", "Las Heras", "Las Heras", 
  "Las Heras", "Las Heras", "Las Heras", "Las Heras", "Las Heras", 
  "Las Heras", "Las Heras", "Las Heras", "Las Heras", "Saavedra", 
  "Saavedra", "Saavedra", "Saavedra", "Saavedra", 
  "Saavedra", "Saavedra", "Saavedra", "Saavedra", 
  "Saavedra", "Saavedra", "Saavedra"), Mes = structure(c(1546300800, 
  1548979200, 1551398400, 1554073200, 1556665200, 1559343600, 1561935600, 
  1564614000, 1567292400, 1569884400, 1572566400, 1575158400, 1546300800, 
  1548979200, 1551398400, 1554073200, 1556665200, 1559343600, 1561935600, 
  1564614000, 1567292400, 1569884400, 1572566400, 1575158400), 
  class = c("POSIXct", "POSIXt"
  ), tzone = ""), n = c(54L, 53L, 60L, 56L, 77L, 98L, 103L, 88L, 
  72L, 75L, 87L, 52L, 50L, 50L, 62L, 89L, 74L, 86L, 103L, 94L,
  78L, 91L, 70L, 68L)), row.names = c(NA, -24L
  ), class = "data.frame")
1
Allan Cameron 2 अक्टूबर 2020, 19:23