Tabela de conteúdos

Elaine Cristina Bornancin

pink.jpg

Mestranda em Zoologia, Instituto de Biociências, USP

Proposta

Plano B

Uma função que formate e padronize gráficos mais comuns usados em publicações, de acordo com as normas de um ou mais periódicos.

Página do help

graf.padrao                package:unknown                R Documentation

Padronização de gráficos

Description:

     Produz um gráfico da variável dependente em função da preditora, padronizado conforme as normas de um ou mais periódicos específicos.
A função avalia também se a variável independente é categórica ou contínua, e plota o gráfico conforme sua classe.

Usage:

     graf.padrao(dados)

Arguments:

 dados: data frame contendo os dados a serem plotados, de forma que deverá apresentar, necessariamente:
		Como primeira coluna, os valores da váriável dependente;
		Como segunda coluna, os valores da variável preditora;
		Como terceira coluna, a(s) inicial(is) do periódico onde o gráfico será publicado.  

Details:

      Para variável independente contínua, para trabalho a ser apresentado na revista "B", a função retorna um gráfico com as seguintes características: Margens nos valores de 5,5,3,2;legenda das escalas na fonte Times;box no formato "l",legenda dos eixos na fonte "sans"; ajuste de um modelo linear e plota a linha de tendência do modelo, "ticks" para o interior da área do gráfico, no valor de 0.3.
	Para a variável independente categórica, para trabalho a ser apresentado na revista "B", a função retorna um gráfico com as seguintes características: Um boxplot com largura dos boxes no valor de 0.6.
	Para variável independente contínua, para trabalho a ser apresentado na revista "C", a função retorna um boxplot com as seguintes características: Margens nos valores de 7,5,2,1; orientação das legendas do eixo perpendicular ao eixo;"ticks" para o interior da área do gráfico, no valor de 1; eixo na cor laranja;dados plotados na cor laranja; legenda do eixo x na cor verde-amarelado;legenda do eixo y na cor hot pink; ajuste de um modelo linear e plota a linha de tendência do modelo na cor azul,com linha pontilhada e de espessura 3.
	Para variável independente categórica, para trabalho a ser apresentado na revista "C",a função retorna um boxplot com as seguintes características: Margens no valor de 4,4,3,2; fonte "Times" nas legendas dos eixos;legenda dos eixos orientada verticalmente; "ticks" orientados para dentro da área do gráfico, com comprimento 1;caixa do gráfico no formato "l";preenchimento dos boxes na cor "trigo".

	

Value:

     graf.padrao retorna um gráfico, conforme os dados apresentados.

     

Note:

	A função está programada para formatar gráficos conforme as normas de duas revistas específicas, a Brazilian Journal of Relevant Issues, indicada pela letra "B", 
e Conchinchinean Journal of Nasty Graphs, indicada pela letra "C".
	

Warning:

	Para normas de outras revistas, a função deverá ser adaptada.     

Author(s):

      Elaine Cristina Bornancin
	elainebornancin@yahoo.com.br

See Also:

     plot, boxplot

Examples:

##########
a<-seq(1,10)
b<-seq(11,20)
c<-rep("C",times=10)
abc<-data.frame(a,b,c)
graf.padrao(abc)

##########
d<-seq(1,10)
e<-rep(c("pequeno","grande"),each=5)
f<-rep("B",times=10)
def<-data.frame(d,e,f)
graf.padrao(def)  

Função

graf.padrao<-function(dados){

if(is.numeric(dados[,2])==T)
	{
	if(any(dados[,3]=="C")) ###  "C" ---> Conchinchinean Journal of Nasty Graphs #####
		{
		x11()
		par(mar=c(7,5,2,1))
		par(cex.lab=3)
		par(las=2)
		par(tcl=1)
		par(cex.axis=1.5)
		par(col.axis="orange")
		plot(dados[,1]~dados[,2],pch=11,xaxp=c(min(dados[,2]),max(dados[,2]),10),yaxp=c(min(dados[,1]),max(dados[,1]),10),cex=3, col="turquoise1",ann=F)
		mtext(text=paste(colnames(dados[1])),side=2,cex=1.5,line=4,col="yellowgreen",las=0)
		mtext(text=paste(colnames(dados[2])),side=1,cex=1.5,line=5,col="hotpink",las=0)
		modelo<-lm(dados[,1]~dados[,2])
		modelo
		abline(modelo,col="blue",lty=2,lwd=3)
		}

	if(any(dados[,3]=="B")) #### "B" ---> Brazilian Journal of Relevant Issues
		{ 
		x11()
		par(mar=c(5,5,3,2))
		par(cex.lab=1,5)
		par(family="serif")
		par(las=1)
		par(tcl=0.3)
		par(bty="l")
		plot(dados[,1]~dados[,2],pch=19,xaxp=c(min(dados[,2]),max(dados[,2]),4),yaxp=c(min(dados[,1]),max(dados[,1]),4),ann=F,cex=0.9)
		par(family="sans")
		mtext(text=paste(colnames(dados[1])),side=2,line=3.5,las=0,cex=1.2)
		mtext(text=paste(colnames(dados[2])),side=1,line=3.5,las=0,cex=1.2)
		modelo<-lm(dados[,1]~dados[,2])
		modelo
		abline(modelo,lwd=1.2)
		}
	}


if(is.factor(dados[,2])==T)
	{
	if(any(dados[,3]=="C")) ###  "C" ---> Conchinchinean Journal of Nasty Graphs #####
	{
	par(cex=1.5)
	par(mar=c(4,4,3,2))
	par(family="serif")
	par(las=3)
	par(tcl=1)
	par(bty="l")
	boxplot(dados[,1]~dados[,2],col="wheat",border=2,yaxp=c(min(dados.cat.C[,1]),max(dados.cat.C[,1]),10))

	}

	if(any(dados[,3]=="B")) #### "B" ---> Brazilian Journal of Relevant Issues
	{
	boxplot(dados[,1]~dados[,2],boxwex=0.6)
	}
	}
}

Arquivo da função

graf.padrao

Para os profes: Tentei durante dias, em vão, colocar em prática a minha proposta principal (obviamente muito mais complicada para mim do que eu esperava). Estava à beira da loucura, quando decidi abortar o plano e manter a minha sanidade. Fiz a proposta alternativa. Me resta, portanto, implorar aos professores por piedade e misericórdia.