比例线宽ggplot2,在甘特图中

proportional line width ggplot2, in Gantt chart

我的目标是在 data.frame 中绘制与变量成比例的线宽,例如,这个话题已被讨论 。 我的应用程序(尽管问题可能与此无关)在甘特图 adapted from here 中,如:

library(reshape2)
library(ggplot2)

MA <- c("A", "B", "C")

dfr <- data.frame(
  name        = factor(MA, levels = MA),
  start.date  = as.Date(c("2012-09-01", "2013-01-01","2014-01-01")),
  end.date    = as.Date(c("2019-01-01", "2017-12-31","2019-06-30")),
  prozent     = c(1,0.5,0.75)*100
)
mdfr <- melt(dfr, measure.vars = c("start.date", "end.date"))

ggplot(mdfr, aes(value, name)) + geom_line(aes(size = prozent)) 

这会产生 我确实得到了不同的线宽,但是看起来与 prozent 不成比例。

有没有办法让线宽prozent成比例

只需添加 + scale_size_area():

ggplot(mdfr, aes(value, name)) +
    geom_line(aes(size = prozent)) +
    scale_size_area()