本文源自微信公众:爱编程的药学生

原创:恺忻

甘特图如下所示,能够为一项课题的计划进行可视化。目前正值博士申请期间,很多的导师会要求在research proposal中加入这样一张甘特图,绘制的r语言代码如下所示。

trendchart图表怎么做(Ganttchart甘特图)(1)

setwd("C:\\Users\\kwkx\\Desktop\\KCL") pdf(file='GanttChart.pdf',w=15,h=7) GanttChart <- function(program,startdate,enddate,title = NA) { startdate <- as.Date(startdate) enddate <- as.Date(enddate) if(sum(startdate > enddate) > 0) { stop('error:start date is later than end date.') } progrm <- length(program):1 plot(NA,NA, xlim = c(min(startdate),max(enddate)), ylim = range(progrm), xlab = 'Time', ylab = 'Content', xaxt = 'n', yaxt = 'n', main = title) startUnionEnd <- as.Date(origin = '1970-01-01',union(startdate,enddate)) axis(1,startUnionEnd,startUnionEnd) axis(2,progrm,program) segments(startdate,progrm,enddate,progrm,lwd = 6) abline(v = startUnionEnd) } program <- c('P1','P2','P3','P4','P5','P6') startdate=c(as.Date('2021-09-20'),as.Date('2021-11-1'),as.Date('2021-12-15'),as.Date('2022-01-20'), as.Date('2022-03-01'),as.Date('2022-05-01')) enddate=c(as.Date('2021-11-1'),as.Date('2021-12-15'),as.Date('2022-01-20'),as.Date('2022-03-01'), as.Date('2022-05-01'),as.Date('2022-11-01')) GanttChart(program,startdate,enddate,'GANTT CHART') dev.off()

上述代码的图片如下:

trendchart图表怎么做(Ganttchart甘特图)(2)

之后,对于产生的图片的“content”部分,可以使用AI或PPT增加一些文字说明,就可以产生第一张图的效果。

参考资料:

https://www.cnblogs.com/f-young/p/7754348.html

,