r - change discrete x zoo scale in ggplot2 -


i have data.frame:

data<-structure(list(mesanio = structure(c(2008.25, 2008.41666666667,  2008.58333333333, 2008.66666666667, 2008.75, 2008.83333333333,  2008.91666666667, 2009, 2009.08333333333, 2009.16666666667, 2009.25,  2009.33333333333, 2009.41666666667, 2009.5, 2009.58333333333,  2009.66666666667, 2009.75, 2009.83333333333, 2009.91666666667,  2010, 2010.08333333333, 2010.16666666667, 2010.25, 2010.33333333333,  2010.41666666667, 2010.5, 2010.58333333333, 2010.66666666667,  2010.75, 2010.83333333333, 2010.91666666667, 2011, 2011.08333333333,  2011.16666666667, 2011.25, 2011.33333333333, 2011.41666666667,  2011.5, 2011.58333333333, 2011.66666666667, 2011.75, 2011.83333333333,  2011.91666666667, 2012, 2012.08333333333, 2012.16666666667, 2012.25,  2012.33333333333, 2012.41666666667, 2012.5, 2012.58333333333,  2012.66666666667, 2012.75, 2012.83333333333, 2012.91666666667,  2013, 2013.08333333333, 2013.16666666667, 2013.25, 2013.33333333333,  2013.41666666667, 2013.5, 2013.5, 2013.58333333333, 2013.58333333333,  2013.66666666667, 2013.66666666667, 2013.75, 2013.75, 2013.83333333333,  2013.83333333333, 2013.91666666667, 2013.91666666667, 2014, 2014,  2014.08333333333, 2014.08333333333, 2014.16666666667, 2014.16666666667,  2014.25, 2014.25, 2014.33333333333, 2014.33333333333, 2014.41666666667,  2014.41666666667, 2014.5, 2014.5, 2014.5, 2014.58333333333, 2014.58333333333,  2014.58333333333, 2014.66666666667, 2014.66666666667, 2014.66666666667,  2014.75, 2014.75, 2014.75, 2014.83333333333, 2014.83333333333,  2014.83333333333, 2014.91666666667, 2014.91666666667, 2014.91666666667,  2015, 2015, 2015, 2015, 2015.08333333333, 2015.08333333333, 2015.08333333333,  2015.08333333333, 2015.16666666667, 2015.16666666667, 2015.16666666667,  2015.16666666667, 2015.25, 2015.25, 2015.25, 2015.25, 2015.33333333333,  2015.33333333333, 2015.33333333333, 2015.33333333333, 2015.41666666667,  2015.41666666667, 2015.41666666667, 2015.41666666667, 2015.5,  2015.5, 2015.5, 2015.5), class = "yearmon"), mesesregistrado = c("4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "4. más de 24", "4. más de 24", "4. más de 24", "4. más de 24",  "3. más de 12", "4. más de 24", "3. más de 12", "4. más de 24",  "3. más de 12", "4. más de 24", "3. más de 12", "4. más de 24",  "3. más de 12", "4. más de 24", "3. más de 12", "4. más de 24",  "3. más de 12", "4. más de 24", "3. más de 12", "4. más de 24",  "3. más de 12", "4. más de 24", "3. más de 12", "4. más de 24",  "3. más de 12", "4. más de 24", "3. más de 12", "4. más de 24",  "2. más de 6", "3. más de 12", "4. más de 24", "2. más de 6",  "3. más de 12", "4. más de 24", "2. más de 6", "3. más de 12",  "4. más de 24", "2. más de 6", "3. más de 12", "4. más de 24",  "2. más de 6", "3. más de 12", "4. más de 24", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24", "1. menos de 6", "2. más de 6",  "3. más de 12", "4. más de 24"), clientes = c(1l, 1l, 1l, 3l,  110l, 238l, 270l, 300l, 309l, 321l, 295l, 345l, 373l, 376l, 409l,  449l, 485l, 480l, 518l, 595l, 604l, 659l, 639l, 722l, 698l, 750l,  775l, 802l, 868l, 894l, 974l, 1002l, 971l, 1060l, 1037l, 1047l,  1089l, 1112l, 1155l, 1182l, 1226l, 1292l, 1375l, 1374l, 1416l,  1457l, 1445l, 1451l, 1407l, 1467l, 1533l, 1574l, 1607l, 1595l,  1716l, 1767l, 1719l, 1781l, 1807l, 1830l, 1822l, 17l, 1907l,  82l, 1880l, 128l, 1912l, 173l, 1891l, 219l, 1888l, 280l, 1964l,  337l, 1965l, 369l, 1946l, 421l, 1938l, 487l, 1945l, 556l, 1946l,  641l, 1942l, 26l, 662l, 1948l, 117l, 598l, 1945l, 190l, 652l,  1960l, 255l, 632l, 2023l, 321l, 627l, 2056l, 422l, 642l, 2099l,  57l, 451l, 660l, 2139l, 182l, 410l, 647l, 2101l, 292l, 421l,  675l, 2175l, 752l, 428l, 654l, 2172l, 995l, 435l, 690l, 2265l,  1756l, 456l, 697l, 2285l, 2693l, 462l, 705l, 2382l)), .names = c("mesanio",  "mesesregistrado", "clientes"), row.names = c(na, -131l), class = c("grouped_df",  "tbl_df", "tbl", "data.frame"), vars = list("mesanio"), drop = true) 

using data producing following using ggplot():

g_evtrafico<-ggplot(data,                      aes(x = as.factor(mesanio),                          y = clientes,                         group = 1))+   geom_bar(stat = "identity")+   facet_grid(mesesregistrado ~ .)+   stat_smooth(method="lm", se=false)+   labs(title = "flujo de clientes", x = "fecha", y = "clientes") 

the output following:

enter image description here

i'm trying eliminate (programatically, because going in rmarkdown doc) x-axis labels interfere correct reading of graph. ideally, function "decide" breaks based on length of data. in case, example, need year (column mesanio yearmon zoo object).

i have tried adding scale_x_discrete() nothing displays if put generic break manually. i'm guessing due facets, not sure.

unless have reason convert x values of class yearmon discrete scale using factor, think should keep them , use zoo::scale_x_yearmon:

library(zoo) ggplot(data, aes(x = mesanio, y = clientes) +   geom_bar(stat = "identity")+   facet_grid(mesesregistrado ~ .) +   scale_x_yearmon() 

enter image description here

you may use n, breaks , format arguments fine-tune appearance further.


Comments

Popular posts from this blog

html - Firefox flex bug applied to buttons? -

html - Missing border-right in select on Firefox -

python - build a suggestions list using fuzzywuzzy -