4

I have a barplot that I want to change the distance between the bars on certain bars but not others (see the image below). What I want is for the bars that are in the same quarter to be touching each other and a large space between the rest of the bars. So, Q1 2019 and Q12020 would be right next to each other, but they both would be further away from Q2 2019 and Q2 2020 (which would be touching) and so on.

enter image description here

Here is my data. Thank you very much for the help.

structure(list(co_number = c("C406023", "C408513", "C408543", 
"C427164", "C428166", "C428701", "C432782", "C431623", "C436305", 
"C444038", "C447320", "C442635", "C446324", "C440440", "C445623", 
"C455247", "C460508", "C459022", "C456041", "C460221", "C466480", 
"C468005", "C458024", "C446526", "C469882", "C440724", "C457841", 
"C449641", "C470421", "C464202", "C471962", "C477006", "C472904", 
"C475060", "C474650", "C472424", "C477802", "C477087", "C464561", 
"C464360", "C476800", "C480531", "C484902", "C453712", "C443943", 
"C486546", "C489952", "C488541", "C484465", "C482441", "C484967", 
"C477463", "C485588", "C499041", "C506106", "C493460", "C497150", 
"C509883", "C457840", "C457810", "C506361", "C514915", "C507641", 
"C519444", "C528201", "C521020", "C530300", "C537881", "C522003", 
"C516782", "C533620", "C532300", "C411664", "C539785", "C538366", 
"C526603", "C551317", "C544925", "C517130", "C542662", "C558346", 
"C517135", "C555207", "C517136", "C531625", "C517160", "C540683", 
"C540103", "C540682", "C572502", "C558749", "C563246", "C538961", 
"C493628", "C561153", "C552849", "C565901", "C545087", "C549101", 
"C566909", "C565101", "C553040", "C561144", "C547882", "C555965", 
"C569621", "C552454", "C570925", "C556082", "C518162", "C573844", 
"C557653", "C583007", "C575205", "C535520", "C537622", "C576841", 
"C538344", "C591069", "C570847", "C619580", "C552462", "C550950", 
"C583102", "C575543", "C584682", "C572921", "C582560", "C574655", 
"C552455", "C575616", "C578581", "C538154", "C578586", "C538161", 
"C570812", "C582181", "C578585", "C556726", "C556728", "C600473", 
"C556744", "C597629", "C606321", "C509460", "C522102", "C578546", 
"C556729", "C556745", "C556730", "C609023", "C556746", "C610081", 
"C556749", "C574784", "C575627", "C612154", "C610840", "C556747", 
"C556750", "C612273", "C585304", "C598840", "C599066", "C599100", 
"C540105", "C575617", "C598500", "C611781", "C612412", "C617140", 
"C604082", "C607419", "C538183", "C538187", "C538155", "C590861", 
"C510978", "C616481", "C619880", "C619587", "C612989", "C608680", 
"C608681", "C589986", "C549229", "C610832", "C613832", "C516940", 
"C531500", "C577720", "C619761", "C634775", "C627921", "C617583", 
"C611875", "C620453", "C629086", "C601882", "C629012", "C629963", 
"C612135", "C644542", "C652247", "C639000", "C654789", "C617368", 
"C634947", "C658302", "C651628", "C577122", "C674720", "C677961", 
"C615100", "C666914", "C658966", "C667446", "C702320", "C666343", 
"C653145", "C684741", "C695902", "C715861", "C711442", "C722703", 
"C725841", "C516645"), release_date = structure(c(17903, 17914, 
17917, 17962, 17975, 17975, 17988, 17997, 18010, 18024, 18032, 
18036, 18037, 18040, 18040, 18066, 18068, 18080, 18085, 18086, 
18093, 18098, 18103, 18108, 18109, 18116, 18116, 18117, 18117, 
18124, 18128, 18129, 18130, 18130, 18131, 18134, 18135, 18136, 
18137, 18138, 18145, 18148, 18162, 18169, 18170, 18172, 18173, 
18183, 18184, 18185, 18186, 18193, 18194, 18200, 18211, 18212, 
18226, 18234, 18236, 18240, 18243, 18271, 18281, 18282, 18284, 
18285, 18285, 18296, 18298, 18298, 18306, 18309, 18312, 18316, 
18318, 18320, 18326, 18332, 18333, 18333, 18334, 18338, 18339, 
18343, 18351, 18353, 18353, 18354, 18354, 18355, 18358, 18359, 
18360, 18362, 18365, 18365, 18366, 18366, 18366, 18368, 18374, 
18374, 18375, 18377, 18378, 18379, 18380, 18380, 18381, 18382, 
18382, 18387, 18388, 18393, 18393, 18393, 18394, 18396, 18396, 
18396, 18400, 18400, 18401, 18402, 18402, 18402, 18403, 18403, 
18404, 18404, 18410, 18414, 18414, 18415, 18415, 18416, 18416, 
18417, 18418, 18418, 18418, 18421, 18421, 18421, 18333, 18267, 
18422, 18423, 18423, 18423, 18423, 18424, 18424, 18425, 18425, 
18425, 18430, 18430, 18431, 18431, 18431, 18431, 18435, 18435, 
18435, 18561, 18436, 18437, 18438, 18439, 18442, 18444, 18449, 
18449, 18449, 18449, 18450, 18450, 18451, 18452, 18452, 18453, 
18457, 18457, 18457, 18459, 18459, 18459, 18464, 18464, 18467, 
18479, 18480, 18481, 18485, 18485, 18486, 18487, 18495, 18500, 
18502, 18506, 18506, 18513, 18519, 18523, 18526, 18536, 18547, 
18550, 18554, 18557, 18558, 18563, 18564, 18565, 18570, 18577, 
18583, 18584, 18585, 18590, 18598, 18598, 18600, 18610, 18283
), class = "Date"), year = c("2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2019", "2019", "2019", "2019", "2019", "2019", "2019", 
"2019", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020", "2020", 
"2020", "2020", "2020", "2020", "2020", "2020", "2020"), quarter = c(1L, 
1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 
1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 4L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 1L), rework_status = c("CO Rework", "CO Rework", "Content Rework", 
"No Rework", "Content Rework", "CO Rework", "No Rework", "CO Rework", 
"No Rework", "CO Rework", "Content Rework", "CO Rework", "No Rework", 
"Content Rework", "No Rework", "CO Rework", "No Rework", "CO Rework", 
"CO Rework", "CO Rework", "No Rework", "No Rework", "CO Rework", 
"No Rework", "No Rework", "CO Rework", "No Rework", "CO Rework", 
"CO Rework", "Content Rework", "No Rework", "No Rework", "No Rework", 
"No Rework", "No Rework", "No Rework", "No Rework", "No Rework", 
"No Rework", "No Rework", "No Rework", "No Rework", "No Rework", 
"CO Rework", "CO Rework", "No Rework", "CO Rework", "CO Rework", 
"No Rework", "No Rework", "CO Rework", "CO Rework", "No Rework", 
"No Rework", "No Rework", "No Rework", "CO Rework", "No Rework", 
"Content Rework", "Content Rework", "Content Rework", "CO Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"No Rework", "CO Rework", "CO Rework", "CO Rework", "CO Rework", 
"No Rework", "No Rework", "CO Rework", "Content Rework", "No Rework", 
"CO Rework", "No Rework", "CO Rework", "No Rework", "CO Rework", 
"No Rework", "No Rework", "CO Rework", "No Rework", "No Rework", 
"Content Rework", "CO Rework", "No Rework", "Content Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "CO Rework", 
"No Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"No Rework", "CO Rework", "CO Rework", "CO Rework", "CO Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "CO Rework", 
"No Rework", "No Rework", "No Rework", "CO Rework", "CO Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"Content Rework", "CO Rework", "CO Rework", "No Rework", "CO Rework", 
"No Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"No Rework", "CO Rework", "No Rework", "CO Rework", "CO Rework", 
"CO Rework", "No Rework", "CO Rework", "CO Rework", "CO Rework", 
"CO Rework", "No Rework", "Content Rework", "No Rework", "No Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"CO Rework", "No Rework", "No Rework", "Content Rework", "Content Rework", 
"No Rework", "No Rework", "CO Rework", "No Rework", "No Rework", 
"CO Rework", "CO Rework", "CO Rework", "No Rework", "Content Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"No Rework", "No Rework", "CO Rework", "CO Rework", "CO Rework", 
"No Rework", "CO Rework", "No Rework", "No Rework", "No Rework", 
"CO Rework", "No Rework", "No Rework", "CO Rework", "Content Rework", 
"CO Rework", "CO Rework", "CO Rework", "No Rework", "CO Rework", 
"No Rework", "No Rework", "CO Rework", "No Rework", "No Rework", 
"No Rework", "CO Rework", "No Rework", "No Rework", "No Rework", 
"CO Rework", "No Rework", "No Rework", "CO Rework", "No Rework", 
"CO Rework", "CO Rework", "No Rework", "Content Rework", "CO Rework", 
"CO Rework", "CO Rework", "CO Rework", "CO Rework", "No Rework", 
"No Rework", "No Rework", "Content Rework", "No Rework", "No Rework", 
"No Rework", "No Rework", "No Rework", "No Rework", "No Rework", 
"CO Rework"), q_year = c("Q1 2019", "Q1 2019", "Q1 2019", "Q1 2019", 
"Q1 2019", "Q1 2019", "Q2 2019", "Q2 2019", "Q2 2019", "Q2 2019", 
"Q2 2019", "Q2 2019", "Q2 2019", "Q2 2019", "Q2 2019", "Q2 2019", 
"Q2 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", 
"Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", 
"Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", 
"Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", 
"Q3 2019", "Q3 2019", "Q3 2019", "Q3 2019", "Q4 2019", "Q4 2019", 
"Q4 2019", "Q4 2019", "Q4 2019", "Q4 2019", "Q4 2019", "Q4 2019", 
"Q4 2019", "Q4 2019", "Q4 2019", "Q4 2019", "Q4 2019", "Q4 2019", 
"Q4 2019", "Q4 2019", "Q4 2019", "Q1 2020", "Q1 2020", "Q1 2020", 
"Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", 
"Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", 
"Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", "Q1 2020", 
"Q1 2020", "Q1 2020", "Q1 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q1 2020", "Q1 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q4 2020", 
"Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q2 2020", "Q3 2020", 
"Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", 
"Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", 
"Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", 
"Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", 
"Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", 
"Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q3 2020", "Q4 2020", 
"Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", 
"Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", 
"Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", "Q4 2020", 
"Q1 2020")), row.names = c(NA, -227L), class = c("tbl_df", "tbl", 
"data.frame"))
Matt Simonson
  • 105
  • 1
  • 7

1 Answers1

2

Try with facets:

library(ggplot2)
library(dplyr)
#Plot
ggplot(df,aes(x=q_year,fill=rework_status))+
  geom_bar(stat='count',width=1)+
  facet_wrap(.~quarter,scales='free_x',nrow = 1,strip.position = 'bottom')+
  theme(strip.text = element_blank(),
        strip.placement = 'outside')

Output:

enter image description here

You can play around width to increase/reduce space between bars.

Duck
  • 39,058
  • 13
  • 42
  • 84