Довольно новичок в r, но я пытаюсь создать функцию для построения графика данных, когда я их получаю, с довольно большим количеством опций. По оси Y требуется диапазон от 0 до 150000, а метки записываются в виде целых чисел. Проблема в том, что мне нужно записать их в стандартной форме (желательно в «нормальной» нотации 10 ^ x, а не в E. Каждый ответ, который я видел, использует ggplot, с которым я не знаком, поэтому я бы предпочел внести это одно изменение. без, если возможно.
Я впервые задаю здесь вопрос, поэтому, пожалуйста, дайте мне знать, если есть что-то еще, что мне нужно указать.
Вот полный код функции и ввод - это фрейм данных.
cdplot=function(a,title,label,XLL,XUL,YLL,YUL,Avrg,buf,b,pl,c){
plot(NULL,type="l",xlab="Wavelength (nm)",xlim=c(1,nrow(a)),ylab="",ylim=c(YLL,YUL),xaxt="n",las=1)
axis(1,at=seq(1,nrow(a),by=5),labels=seq(XLL,XUL,by=5))
temp=NULL
temp=a[-1]
temp=temp/(10*pl*(c/10^6))
abline(h=0,lty=2)
if(buf==T){
btemp=((temp[,(b)]+temp[,(b+1)]+temp[,(b+2)])/3)
temp=temp[,c(-b,-(b+1),-(b+2))]-btemp
}
if(Avrg==F){
i=1
for(i in (i:ncol(temp))){
lines(x=rev(temp[,i]), type="l",col=(ceiling(i/3)),lwd=2)
}
}
else{
i=1
for(i in (i:(ncol(temp)/3))){
mtemp=((temp[,(3*i-1)]+temp[,(3*i)]+temp[,(3*i)])/3)
lines(x=rev(mtemp),type="l",col=i,lwd=2)
}
}
legend("bottomright",legend=label,col=c(1:length(label)),lty=1)
title(title)
}