Создайте не -перекрывающийся график с накоплением областей с помощью ggplot2

У меня есть некоторые данные, извлеченные и обработанные из Интернета в этой форме:

>head(dat)
  count  name          episode    percent
1   309   don 01-a-little-kiss 0.27081507
2   220 megan 01-a-little-kiss 0.19281332
3   158  joan 01-a-little-kiss 0.13847502
4   113 peggy 01-a-little-kiss 0.09903593
5   107 roger 01-a-little-kiss 0.09377739
6    81  pete 01-a-little-kiss 0.07099036

Я пытаюсь создать диаграмму с областями с накоплением, как здесь:Создание графика с накоплением областей с помощью ggplot2

Когда я делаю

require(RCurl)
require(ggplot2)
link <- getURL("http://dl.dropbox.com/u/25609375/so_data/final.txt")
dat <- read.csv(textConnection(link), sep=' ', header=FALSE, 
             col.names=c('count', 'name', 'episode'))

dat <- ddply(dat,.(episode), transform, percent = count / sum(count))

ggplot(dat, aes(episode, percent, group=name)) + 
     geom_area(aes(fill=name, colour=name), position='stack')

enter image description here

, я получаю эту причудливую диаграмму.

Я хочу, чтобы области не пересекались друг с другом и заполняли весь холст, так как общий процент для каждого episodeфактора равен 100%.

7
задан Community 23 May 2017 в 11:54
поделиться