Белые линии в градиенте. Прямые из пакета plotrix R
У кого-нибудь есть решение для удаления белых линий, видимых здесь в градуированных прямоугольниках в верхней части графика? Они производятся с gradient.rect
от plotrix
пакет.
gradient.rect(as.Date("1979-05-04"),70,as.Date("1990-11-28"),80,col=smoothColors("royalblue",100.0,"white"),border=NA,gradient="x")
Они появляются как в выходных данных RStudio, так и в экспортированном PNG.
1 ответ
Мне удалось воспроизвести проблему (хотя не это изображение) с этим кодом:
png();plot(x=seq(as.Date("1979-05-04"),as.Date("1990-11-28"),length=50),
1:50,type="n",axes=FALSE) # set up plot coords correctly
plotrix::gradient.rect(as.Date("1979-05-04"),5, as.Date("1990-11-28"),6,
col=plotrix::smoothColors("royalblue", 100.0,"white"),
border=NA,gradient="x",nslices=121);
dev.off()
Затем я увидел три тонких белых вертикальных полосы. Я посмотрел на значения RGB и составил их шестнадцатеричные эквиваленты:
plot(NA, xlim=c(1,110),ylim=c(0x4169E1, 0xFFFFFF) )
lines(1:102, as.numeric(
paste0('0x',
substr( plotrix::smoothColors("royalblue",100.0,"white"),
2,7)
) ) )
Я заметил, что в последовательностях были неравные промежутки, поэтому попытался использовать меньшее количество цветов с большим успехом:
png(); plot(x=seq(as.Date("1979-05-04"),as.Date("1990-11-28"),length=50),1:50,type="n",axes=FALSE)
plotrix::gradient.rect(as.Date("1979-05-04"),20,as.Date("1990-11-28"),30,
col=plotrix::smoothColors("royalblue",55,"white"),border=NA,gradient="x");dev.off()
Я не очень понимаю, почему это происходит. Вы можете связаться с Джимом Лемоном, если вам нужно объяснение... а не просто стратегия исправления. Его адрес электронной почты должен появиться на вашей консоли R, если вы введете: maintainer("plotrix")