[R-es] Problema con las lineas de un grafico

neo ericconchamunoz en gmail.com
Lun Dic 31 22:16:15 CET 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Estimada comunidad, hace un tiempo consulte como hacer un grafico del
tipo XY con barras de dispersion en Y para cada valor de X ... bueno,
finalmente lo puedo hacer, pero ocurre un pequeño problema cuando se
traza la linea que unos los puntos del grafico ... ocasionalmente la
linea une los puntos erroneamente, esto es, en lugar de pasar en orden
por el 1, luego el 2, el 3, etc ... pasa por el 1, 2 va al 4 y vuelve al
3 ... como se soluciona esto y por que ocurre ?? les agradeceria ideas
por favor pues que tengo que presentar esto en un examen :)  ... adjunto
el grafico erroneo, el codigo con el que se obtuvo y el set de datos ...
un abrazo y muchas gracias y UN FELIZ 2013 !!!!!!!!!!

ERIC.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJQ4gCfAAoJEDoUMoeY1RuMI5YH/j8NFTgMCBfsZL+02BXiC8bX
KRwizUBjg1qFHGVUUFdlT5Ico8PdVOB9bGAJYxBR5AHX4b7x270Bjl2NPZDv0Dz0
YvuQr+5k7uzeTBJsfCRiHHdSMLx8Tf9T1uiy7GIuOlNtWH3V8fQk2TUFfeiHDXIN
UoTpj0ndLzwtpWZB+YoiCg5ElAJRq43IMpmhVFxVt29GDbLNc95tXjojv4xWqIyZ
5DD2nFdy6rJEbUS1Le9VauG5MFQEQsAg60gcY7M8eGkN70hS3wh/pqYqCNWmHu6e
aK3dFVvgmkH9sTomivf88VxialYUBSPalzCYXEr7G7fGoORpNKXKc9JZjI5GLN4=
=wxO/
-----END PGP SIGNATURE-----
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: zpot.png
Type: image/png
Size: 58953 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20121231/65e48737/attachment-0001.png>
------------ próxima parte ------------

# 3. POTENCIAL ZETA
	library(lattice)
	library(Hmisc)
	library(stats)
	# GRAFICOS DE POTENCIAL ZETA EN EL TIEMPO Y POR SOLVENTE PARA cada CONCENTRACION
		setwd(".../2.objesp/experimento/expnov/2zpot")
		zp <- read.table("zpot.csv", header=TRUE,sep="\t",dec=".",as.is=FALSE,na.strings = "NA")
		zp
		# creando el data.frame, cambiando el tipo de dato en la columna y extrayendo los datos desde zp a zp.res
		zp.res <- data.frame("sol",0,0,c(1:(nrow(zp))),0)
		colnames(zp.res) <- c("sol","con","dia","media","ds")
		zp.res[,1] <- as.character(substr(zp[,2],1,3))
		zp.res[,2] <- as.numeric(substr(zp[,2],4,4))
		zp.res[,3] <- as.numeric(substr(zp[,2],7,8))-8
		zp.res[,4] <- as.numeric(zp[,5])
		zp.res[,5] <- as.numeric(zp[,5])
		# se debe repetir la muestra de control dia 6
		zp.res <- rbind(zp.res,zp.res[zp.res$con=="0" & zp.res$dia=="6",])
		# 0rdenar los datos para luego promediar de 10 en 10 ...
		zp.res[do.call(order,zp.res),]
		# capturar solo las concentraciones impares
		zp.res <- rbind(zp.res[zp.res$con=="0",],zp.res[zp.res$con=="1",],zp.res[zp.res$con=="3",],zp.res[zp.res$con=="5",]) 
		zp.res[do.call(order,zp.res),]
		# calculando el promedio y la desviacion estandar del ZP
			# creando el data.frame
				zp.med <- data.frame("",0,0,c(1:(nrow(zp.res)/10)),0)
				colnames(zp.med) <- c("sol","con","dia","media","ds")
				zp.med[,1] <- as.character(zp.med[,1])
			# calculando
		for (i in 0:(nrow(zp.res)/10-1))
		{
		j <- 1+10*i
		zp.med[i+1,1] <- as.character(zp.res[j,1])
		zp.med[i+1,2] <- as.numeric(zp.res[j,2])
		zp.med[i+1,3] <- as.numeric(zp.res[j,3])
		zp.med[i+1,4] <- mean(c(zp.res[j+0,4],zp.res[j+1,4],zp.res[j+2,4],zp.res[j+3,4],zp.res[j+4,4],zp.res[j+5,4],zp.res[j+6,4],zp.res[j+7,4],zp.res[j+8,4],zp.res[j+9,4]))
		zp.med[i+1,5] <- sd(c(zp.res[j+0,4],zp.res[j+1,4],zp.res[j+2,4],zp.res[j+3,4],zp.res[j+4,4],zp.res[j+5,4],zp.res[j+6,4],zp.res[j+7,4],zp.res[j+8,4],zp.res[j+9,4]))
		}
		zp.med
		zp.med[do.call(order,zp.med),]
		# el valor de las concentraciones se tomo del nombre de los archivos con valores de 1 a 5, x lo q debe ser reemplazado por el valor de las concentraciones molares
		zp.med[zp.med$con=="1" & zp.med$sol=="lim",2] <- 0.003
		#zp.med[zp.med$con=="2" & zp.med$sol=="lim",2] <- 0.006
		zp.med[zp.med$con=="3" & zp.med$sol=="lim",2] <- 0.012
		#zp.med[zp.med$con=="4" & zp.med$sol=="lim",2] <- 0.123
		zp.med[zp.med$con=="5" & zp.med$sol=="lim",2] <- 1.233
	
		zp.med[zp.med$con=="1" & zp.med$sol=="dec",2] <- 0.051
		#zp.med[zp.med$con=="2" & zp.med$sol=="dec",2] <- 0.282
		zp.med[zp.med$con=="3" & zp.med$sol=="dec",2] <- 0.513
		#zp.med[zp.med$con=="4" & zp.med$sol=="dec",2] <- 2.822
		zp.med[zp.med$con=="5" & zp.med$sol=="dec",2] <- 5.130
	
		zp.med[zp.med$con=="1" & zp.med$sol=="dol",2] <- 0.004
		#zp.med[zp.med$con=="2" & zp.med$sol=="dol",2] <- 0.008
		zp.med[zp.med$con=="3" & zp.med$sol=="dol",2] <- 0.016
		#zp.med[zp.med$con=="4" & zp.med$sol=="dol",2] <- 0.157
		zp.med[zp.med$con=="5" & zp.med$sol=="dol",2] <- 1.573
	
		# parece q el ciclo cambia el tipo de dato en cada columna x lo q hay que volver a cambiarlo
		zp.med[,2] <- as.numeric(zp.med[,2])
		zp.med[,3] <- as.numeric(zp.med[,3])
		zp.med[,4] <- as.numeric(zp.med[,4])
		zp.med[,5] <- as.numeric(zp.med[,5])
		# graficar ZP en funcion del dia, agrupados primero por tipo de solvente y dentro cada uno de estos por concentracion
		xYplot(media~dia|factor(sol),groups=con,data=zp.med,xlab="Time (days)",ylab="Zpot (mV)")

		# PREPARANDO LOS DATOS PARA GRAFICAR
		zp.med[,6] <- zp.med[,4]-zp.med[,5]
		zp.med[,6]
		zp.med[,7] <- zp.med[,4]+zp.med[,5]
		zp.med[,7]
		zp.med
		xYplot(Cbind(zp.med[,4],zp.med[,6],zp.med[,7])~dia|factor(sol),groups=con,data=zp.med,xlab="Time (days)",ylab="Zpot (mV)", method="bars", keys="lines", type="b")
		savePlot(filename = "../graficos/zpot.png",type ="png",device = dev.cur())

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: zpot.csv
Type: text/csv
Size: 67092 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20121231/65e48737/attachment-0001.bin>


Más información sobre la lista de distribución R-help-es