Hola,
Efectivamente en la ayuda de lattice no está suficientemene claro y por
otro lado aunque esta duda se ha planteado en la lista del R-Help no se
cerró correctamente.
Donde aparece solucionado es en el libro de Deepayan (el autor de la
librerÃa lattice): "Lattice - Multivariate Data Visualization with R"
(Springer 2008). Si tienes acceso al libro, entre las páginas 147-148
trata el caso de tres gráficos que tienen dos ejes "y" diferentes.
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 15 de noviembre de 2011 10:19, Jaume Tormo
<jautorbla en gmail.com>escribió:
Hola,
Mochas gracias por lo de origin.
Sobre los ticks, en la ayuda pone que el valor que le da el usuario
es orientativo, y que es un algoritmo el que decide cuantas marcas
se ponen. Pero me parece raro que no se pueda forzar de alguna
manera.
Muchas gracias Carlos.
jaume
El 14 de noviembre de 2011 17:49, Carlos Ortega
<cof en qualityexcellence.es>escribió:
Hola,
De forma rápida para las preguntas 2 y 3 utiliza "origin=0" como un
parámetro más de dotplot.
Efectivamente con origin=0, el problema del texto en el gráfico 12
desaparece.
....
,scales = list(x = "same",y = "free",tick.number = 3)
*,origin=0*
Y sobre el punto 1 sigo mirándolo...
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 14 de noviembre de 2011 17:18, Jaume Tormo <jautorbla en gmail.com
escribió:
Estimados eRReros,
Vuelvo a la carga con lattice.
Estoy haciendo este gráfico (os adjunto los datos y el resultado)
# cargamos el paquete
require(lattice)
# preliminares
textos<-c("n.s.","***","***","*","***","***","***","***","***","n.s."
,"***","n.s.","n.s.","*","**","n.s.","*","***","***","***","***")
# pinto el gráfico
dotplot(acu.g ~ trat | parc, data = ddsg
,layout = c(3,7)
,aspect=0.5
,type=c("p")
,ylab = "Number of emerged seedlings"
,xlab = "Treatment"
,panel=function(x,y,groups,subscripts,...)
{
panel.dotplot(x, y
,subscripts=subscripts,...
)
panel.average(x, y
,col = "grey", lwd = 1, horizontal =
FALSE )
#anotaciones
#donde las queremos
panel.text(1.5,max(y)*0.75, lab =
textos[packet.number()]) }
,par.settings = list(axis.text= list(cex=1)
,layout.heights= list(strip=0.9)
,dot.symbol=
list(pch=1,col="black",alpha=0.5)
,strip.background=list(col="gray95")
)
,scales = list(x = "same",y = "free",tick.number = 3)
)
Los problemas son los siguientes:
1.- ¿Como puedo hacer para que me ponga un número determinado de
ticks
cada gráfico? Como veis en scales he puesto 3, pero no me hace
caso
haya que poner algo dentro de la función?¿Algo asà como
panel.scales? 2.- ¿Como puedo hacer para que en todos los
gráficos el eje y empiece en 0? Claro al ponerle en scales
y="free" el R se adapta a los datos ¿Como
cambia eso?
3.- Si os fijáis, en el panel 12 el texto queda en medio del
gráfico y
desplazado ligeramente hacia arriba, aunque creo que esto se
arreglará cunado arregle los dos puntos anteriores.
Muchas gracias de antemano.
jaume.
--
Jaume Tormo Blanes
IMEM Ramon Margalef.
Carretera San Vicente del Raspeig s/n
03690 San Vicente del Raspeig - Alicante
www.ua.es
acercad.wordpress.com