структура (NULL, *) устарела в R 3.5. * при использовании ggplot2 - PullRequest
1 голос
/ 31 октября 2019

Я пишу программу, в которой есть шаг, включающий ggplot2 в R. Соответствующие шаги графика:

ggplot() +
geom_violin(data=x, mapping=aes(x=1, y=Mean_cov)) + 
geom_jitter(data=x, mapping=aes(x=3, y=Mean_cov, col=Frac_pos)) + 
scale_x_discrete(breaks=c(1,3), labels=c("","")) +
scale_y_continuous(limits=c(0, 50)) + 
scale_color_gradient2(  breaks=seq(0,100,20), 
                        limits=c(0,100), 
                        low="green3", high="darkorchid4", 
                        midpoint=50, name="% covered") +
coord_flip()

Mean_cov и Frac_pos равны colnames()моего data.frame(). 1 и 3 - нелегальные решения, которые я нашел для получения графика, который разделяет geom_jitter() и geom_violin() на достаточное пространство.

Это сработало в R/3.3.3 но поскольку наш системный администратор обновил значение по умолчанию R до R/3.5.2, у нас возникают проблемы при построении графика (т. Е. График создается, но оси перекрывают поле панели, а не содержатся внутри него). Я знаю, что могу просто указать на R/3.3.3, но я бы предпочел сделать мою программу совместимой с более новыми версиями R, поскольку я хочу опубликовать ее.

Предупреждение, которое я получаю, довольно популярно в R-связанные с ошибками потоки:

3: In structure(NULL, class = "waiver") :
  Calling 'structure(NULL, *)' is deprecated, as NULL cannot have attributes.
  Consider 'structure(list(), *)' instead.

Мне известны другие проблемы стекового потока, подобные моей:

R c.Date () вызывает предупреждение Вызов структуры (NULL), *) 'устарела

Однако я не смог решить эту проблему из-за других проблем, поэтому я решил открыть новую, так как она кажется проблемой ggplot2.

Возможно, ошибка возникает из-за того, что ggplot2 вызывает некоторую функцию в фоновом режиме?

Вот 10 строк из моего фрейма данных:

Frac_pos            Mean_cov
99.78591232934406   42.783034429509
99.98996910484291   24.89770493118806
98.9460737536315    19.48427592934241
99.80868782354266   45.07804411433716
99.48891662209545   88.17287692399121
99.89221021636827   30.86539422141599
99.56238183247297   25.512161961209184
99.00406672752926   32.80431986056934
99.22226325737003   29.72798766048967

Вот как это должно выглядеть (как в R / 3.3.3):

R333

Вот как это выглядит с более новыми версиями R (видите, что оно шире? Поскольку у меня миллионы таких точек, многие из них выпадают из панели):

R352

...