ggplot2 Torten-und donut-Diagramm auf dem gleichen Grundstück

Ich bin versucht, zu replizieren diese ggplot2 Torten-und donut-Diagramm auf dem gleichen Grundstück mit R ggplot. Ich habe genau die gleichen Daten:

browsers<-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")

und es sieht wie folgt aus:

> 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

So weit, ich habe es aufgetragen, die einzelnen Komponenten (d.h. den donut-Diagramm, das die Versionen, und das Kreisdiagramm der Browser) wie so:

ggplot(browsers) + geom_rect(aes(fill=version, ymax=ymax, ymin=ymin, xmax=4, xmin=3)) +
coord_polar(theta="y") + xlim(c(0, 4))

ggplot2 Torten-und donut-Diagramm auf dem gleichen Grundstück

ggplot(browsers) + geom_bar(aes(x = factor(1), fill = browser),width = 1) +
coord_polar(theta="y")

ggplot2 Torten-und donut-Diagramm auf dem gleichen Grundstück

Das problem ist, wie Verbinde ich die zwei sehen aus wie das oberste Bild? Ich habe versucht, viele Möglichkeiten, wie:

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)) 

Aber alle meine Ergebnisse sind entweder verdreht oder enden mit einer Fehlermeldung.

Ich Frage mich, ob dies ist etwas, das die Rcircos oder circlize Pakete verarbeiten kann.
oh, ich weiß nicht, über die Pakete... wird def überprüfen Sie Sie heraus! danke 😉
Ich bin nicht sicher, ob Sie es erlauben, die haben die Grafik, die Sie wollen. Aber, sehen innere und äußere Kreise, ich dachte es gibt vielleicht etwas für Sie in die Pakete.
ahh ich werde immer noch check em out und sehen, was Sie hav zu bieten... danke..
(+1) für interessante Perspektive auf die Darstellung von Informationen

InformationsquelleAutor Tavi | 2014-11-05

Schreibe einen Kommentar