Я надеюсь на некоторую помощь в создании диаграммы Ганта с помощью пакета plan. Пакет кратко упоминается во всеобъемлющем сообщении ранее нескольких подходов с использованием R; см. ответ 4 из 7 для plan Мои воспроизводимые данные приведены ниже.

dput(project)
structure(list(key. = structure(1:8, .Label = c("1,", "2,", "3,", 
"4,", "5,", "6,", "7,", "8,"), class = "factor"), description. = structure(1:8, .Label = c("recommendation1,", 
"recommendation2,", "recommendation3,", "recommendation4,", "recommendation5,", 
"recommendation6,", "recommendation7,", "recommendation8,"), class = "factor"), 
    start. = structure(1:8, .Label = c("10/1/2015,", "10/2/2015,", 
    "10/3/2015,", "10/4/2015,", "10/5/2015,", "10/6/2015,", "10/7/2015,", 
    "10/8/2015,"), class = "factor"), end. = structure(1:8, .Label = c("12/1/2015,", 
    "12/2/2015,", "12/3/2015,", "12/4/2015,", "12/5/2015,", "12/6/2015,", 
    "12/7/2015,", "12/8/2015,"), class = "factor"), done. = c(90, 
    30, 0, 0, 0, 0, 0, 0), neededby = c(0, 0, 0, 0, 0, 0, 0, 
    0)), .Names = c("key.", "description.", "start.", "end.", 
"done.", "neededby"), row.names = c(NA, -8L), class = "data.frame")

При использовании read.gantt() фрейм данных мне кажется прекрасным:

> project
key.     description.     start.       end. done. neededby
1   1, recommendation1, 10/1/2015, 12/1/2015,    90        0
2   2, recommendation2, 10/2/2015, 12/2/2015,    30        0
3   3, recommendation3, 10/3/2015, 12/3/2015,     0        0
4   4, recommendation4, 10/4/2015, 12/4/2015,     0        0
5   5, recommendation5, 10/5/2015, 12/5/2015,     0        0
6   6, recommendation6, 10/6/2015, 12/6/2015,     0        0
7   7, recommendation7, 10/7/2015, 12/7/2015,     0        0
8   8, recommendation8, 10/8/2015, 12/8/2015,     0        0

Но что-то не так, когда я использую print (summary (). Последние две строки имеют проблему. Я попытался переписать их в файл .csv, но безрезультатно.

> print(summary(project))
key.             description.        start.          end.       done.         neededby
1,     :1   recommendation1,:1     10/1/2015,:1   12/1/2015,:1   Min.   : 0.0   Min.   :0 
2,     :1   recommendation2,:1     10/2/2015,:1   12/2/2015,:1   1st Qu.: 0.0   1st Qu.:0 
3,     :1   recommendation3,:1     10/3/2015,:1   12/3/2015,:1   Median : 0.0   Median :0 
4,     :1   recommendation4,:1     10/4/2015,:1   12/4/2015,:1   Mean   :15.0   Mean   :0 
5,     :1   recommendation5,:1     10/5/2015,:1   12/5/2015,:1   3rd Qu.: 7.5   3rd Qu.:0 
6,     :1   recommendation6,:1     10/6/2015,:1   12/6/2015,:1   Max.   :90.0   Max.   :0 
(Other):2   (Other)         :2     (Other)   :2   (Other)   :2  

В любом случае, я запустил plot(), и результат был явно странным.
введите описание изображения здесь

1
lawyeR 29 Май 2015 в 01:57

1 ответ

Лучший ответ

Я являюсь автором пакета R под названием plan. Обычно вопросы возникают на странице проблем пакета, что, по моему мнению, ограничивает аудитория, но имеет то преимущество, что отправляет мне электронное письмо, когда задается вопрос.

В любом случае обычный способ создания данных для диаграммы Ганта - использовать функцию с именем read.gantt(). Чтобы получить документацию по этой функции, попробуйте

library(plan)
?read.gantt

Обратите внимание, что существуют строгие правила в отношении формата. Это должен быть простой текстовый файл, а не csv и уж точно не xls. Отредактируйте его с помощью простого текстового редактора. На вашем месте я бы начал с вывода, который вы указали выше, когда написали project, и он сообщил вам столбцы. Вырежьте / вставьте это в обычный текстовый файл (возможно, с именем "plan.txt", но имя не имеет значения). Затем настройте заголовки и т. Д. В соответствии с документацией для read.gantt(). Тогда просто прочтите это и нанесите на карту. Вероятно, самый быстрый способ узнать формат и увидеть результат - это посмотреть на виньетку, которая идет в комплекте. В R введите

vignette("plan")

И вы получите это. Внизу сообщения я поместил снимок одной из страниц виньетки. Скорее всего, будет сложно читать на SO, просто запустите команду выше и перейдите на страницу 4, чтобы увидеть ее.

Если вы хорошо разбираетесь в текстовом редакторе, это займет у вас всего несколько минут. Но обратите внимание, что формат данных очень строгий, поэтому вам, возможно, придется использовать некоторые хитрые приемы редактора, такие как перемещение столбцов.

Можно было бы привести ваши данные в формат с помощью команд R, но из того, что вы написали выше, кажется, что вы новичок в R, и было бы лучше придерживаться более простого пути подготовки данных и запуска стандартных Команды R.

Пожалуйста, дайте мне знать, если вам понадобится дополнительная помощь. (Опять же, я не читаю SO на регулярной основе, поэтому, если SO не уведомит меня о последующих действиях по этому поводу, я не получу ответа, пока вы не напишите мне по электронной почте. ... вот почему предпочтительнее использовать проблему в plan, конечно.)

snapshot of <code>plan</code> vignette page

2
dank 29 Май 2015 в 02:17