title: ggplot2 pie and donut chart on same plot
body: <p>I am trying to replicate this <img src="https://i.stack.imgur.com/Yx83O.png" alt="enter image description here"> with R ggplot. I have exactly the same data:</p>
  
  <pre><code>browsers&lt;-structure(list(browser = structure(c(3L, 3L, 3L, 3L, 2L, 2L, 
  2L, 1L, 5L, 5L, 4L), .Label = c("Chrome", "Firefox", "MSIE", 
  "Opera", "Safari"), class = "factor"), version = structure(c(5L, 
  6L, 7L, 8L, 2L, 3L, 4L, 1L, 10L, 11L, 9L), .Label = c("Chrome 10.0", 
  "Firefox 3.5", "Firefox 3.6", "Firefox 4.0", "MSIE 6.0", "MSIE 7.0", 
  "MSIE 8.0", "MSIE 9.0", "Opera 11.x", "Safari 4.0", "Safari 5.0"
  ), class = "factor"), share = c(10.85, 7.35, 33.06, 2.81, 1.58, 
  13.12, 5.43, 9.91, 1.42, 4.55, 1.65), ymax = c(10.85, 18.2, 51.26, 
  54.07, 55.65, 68.77, 74.2, 84.11, 85.53, 90.08, 91.73), ymin = c(0, 
  10.85, 18.2, 51.26, 54.07, 55.65, 68.77, 74.2, 84.11, 85.53, 
  90.08)), .Names = c("browser", "version", "share", "ymax", "ymin"
  ), row.names = c(NA, -11L), class = "data.frame")
  </code></pre>
  
  <p>and it looks like this:</p>
  
  <pre><code>&gt; browsers
     browser      version  share   ymax   ymin
  1     MSIE     MSIE 6.0  10.85  10.85   0.00
  2     MSIE     MSIE 7.0   7.35  18.20  10.85
  3     MSIE     MSIE 8.0  33.06  51.26  18.20
  4     MSIE     MSIE 9.0   2.81  54.07  51.26
  5  Firefox  Firefox 3.5   1.58  55.65  54.07
  6  Firefox  Firefox 3.6  13.12  68.77  55.65
  7  Firefox  Firefox 4.0   5.43  74.20  68.77
  8   Chrome  Chrome 10.0   9.91  84.11  74.20
  9   Safari   Safari 4.0   1.42  85.53  84.11
  10  Safari   Safari 5.0   4.55  90.08  85.53
  11   Opera   Opera 11.x   1.65  91.73  90.08
  </code></pre>
  
  <p>So far, I have plotted the individual components (i.e. the donut chart of the versions, and the pie chart of the browsers) like so:</p>
  
  <pre><code>ggplot(browsers) + geom_rect(aes(fill=version, ymax=ymax, ymin=ymin, xmax=4, xmin=3)) +
  coord_polar(theta="y") + xlim(c(0, 4))
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/ozijh.png" alt="enter image description here"></p>
  
  <pre><code>ggplot(browsers) + geom_bar(aes(x = factor(1), fill = browser),width = 1) +
  coord_polar(theta="y")
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/6WTm0.png" alt="enter image description here"></p>
  
  <p>The problem is, how do I combine the two to look like the topmost image? I have tried many ways, such as:</p>
  
  <pre><code>ggplot(browsers) + geom_rect(aes(fill=version, ymax=ymax, ymin=ymin, xmax=4, xmin=3)) +         geom_bar(aes(x = factor(1), fill = browser),width = 1) + coord_polar(theta="y") + xlim(c(0, 4)) 
  </code></pre>
  
  <p>But all my results are either twisted or end with an error message.</p>