RV: [Gvsig_usuarios] (sin asunto)

Jose Manuel Vivó (Chema) josemanuel.vivo en iver.es
Jue Sep 4 16:56:49 CEST 2008


Hola Rosa

Puedes usar la calculadora de campos. Como la expresión parace algo compleja, 
yo la metería dentro de una función. La calculadora de campos admite la carga 
de módulos con definiciones de funciones a la hora de hacer calculos. Lo 
tienes en la pestaña 'avanzada' dentro de la ventana de la calculadora.

Aquí te adjunto un ejemplo de tu expresión. Para que funcione pon la tabla en 
edición, selecciona el campo que quieras actualizar y abre la calcualdora de 
campos (el icono de la calculadora). Luego, en la pestaña 'avanzada' 
selecciona el fichero 'myMod.py' que te adjunto. En la pestaña 'general' 
escribe:

myFunct([i],[d],[e],[f],[g])

Pulsa 'aceptar' y listo.

Si quires saber mas, se está gastando Jython como leguaje, el cual es un 
interprete del lenguaje Python sobre Java.

Puedes saber mas de Python en su página oficial (el Jython que incluimos se 
ajusta al Python en su versión 2.1):

http://www.python.org/
http://pyspanishdoc.sourceforge.net/
http://www.jython.org/Project/

Espero haberte servido de ayuda.

Un Saludo.
Chema.


El Thursday 04 September 2008 14:25:01 Rosa Lopez Santamaria escribió:
> He estado mirando lo que me habéis comentado, pero de esta manera los
> intervalos son fijos.
> Os vuelvo a comentar el problema que tengo de otra manera a ver si se
> entiende mejor lo que busco.
>
>
> Necesitamos crear en la tabla de atributos asociada a la capa shape una
> columna que sea el resultado de ciertas operaciones algebraicas realizadas
> con otras columnas. He encontrado el módulo calculadora de campos pero no
> explica en ningún sitio la sintaxis que se debe utilizar, te dan los
> operadores, las funciones, pero no como se escriben las fórmulas.
>
> Por ejemplo, En saga o sextante, la fórmula se escribiría de la siguiente
> manera:
>
> ifelse(gt(i,d),ifelse(gt(i,e),ifelse(gt(i,f),ifelse(gt(i,g),5,4),3),2),1)
>
> El campo resultante sería un número del 1 al 5 (que es lo que finalmente
> representamos por colores), las letras que aparecen corresponden a las
> columnas en orden alfabético.
>
> En saga o sextante nos da la sintaxis siguiente:
> La función Ifelse (condición,x,y) devuelve x si la condición es verdadera e
> y si es falsa.
> La condición sería gt (x,y) que significa x es mayor que y.
>
> ¿Existe algo parecido en gv-Sig?
> ¿Existe algún documento de cómo se debe utilizar la sintaxis?
>
>
> Muchísimas gracias.
>
>
> -----Mensaje original-----
> De: Ana Alfonso [mailto:alfonso_anacaa en gva.es]
> Enviado el: miércoles, 03 de septiembre de 2008 12:15
> Para: rol_sd83 en inm.es; Lista de Usuarios de gvSIG
> Asunto: Re: [Gvsig_usuarios] (sin asunto)
>
> Rosa Lopez Santamaria wrote:
> > Hola!
> >
> >
> >
> > Me gustaría saber si se puede hacer lo siguiente:
> >
> >
> >
> > Tengo un capa vectorial con una tabla adjunta que contiene una
> > estadística descriptiva que he realizado con el modulo de estadísticas
> > para grid por polígonos.
> >
> > Necesito hacer una clasificación con colores de las medias de esa
> > tabla, que siga unos intervalos que yo les marque, es decir que de
> > toda la columna de medias, me las clasifique en unos intervalos o
> > cortes que yo establezca y me los represente cada uno con un color (no
> > se si se entenderá bien).
> >
> > En sextante se realizaba con el modulo de tablas- cálculo- calculadora
> > (tablas de atributos), en gv-sig, ¿hay algo parecido? ¿Cómo se haría?
> > Gracias!
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > gvSIG_usuarios mailing list
> > gvSIG_usuarios en runas.cap.gva.es
> >
> > Para ver histórico de mensajes, editar sus preferencias de usuario o
> > darse
>
> de baja en esta lista, acuda a la siguiente dirección:
> > http://runas.cap.gva.es/mailman/listinfo/gvsig_usuarios
>
> Hola Rosa,
> Creo entender que quieres una simbología por intervalos, en la que
> puedas modificar los valores para hacer los intervalos y etiquetarlos de
> alguna manera.
> Puedes hacerlo, seleccionando la capa en el TOC, en propiedades/
> Simbología/ Intervalos y ahí eliges e l número de intervalos que deseas,
> el campo (en tu caso será el de medias) y editas las columnas de valor y
> etiqueta.
> De esta manera conseguiras tener en la vista la símbología deseada.
> Y si lo que quieres es hacerlo en la tabla, tendrás que hacer lo siguiente:
> - Comenzar edición de la capa y añadir una columna.
> - Realizar un filtro de los valores que quieres seleccionar (por ejemplo
> un valor de medias que esta entre un valor x e y, el filtro a escribir
> será: Medias = x OR Medias<= y).
> - Una vez aplicado el filtro, pinchas en la columna que quieras escribir
> el rango y en la calculadora de campos escribes el valor. De esta manera
> vas rellenando la columna con los valores que quieras.
>
> Espero que te sea de ayuda.
> Un saludo,
> Ana.



-- 
=============
Jose Manuel Vivó(Chema)
Equipo de gvSIG

IVER T.I. S.A.
C/ Lérida, 20
46009-Valencia
Tlf.+34902252540
Spain
www.iver.es
www.gvsig.com


Este mensaje y sus archivos son confidenciales. No está permitida su reproducción o distribución sin la autorización expresa de "IVER Tecnologías de la Información". Si usted no es el destinatario previsto, queda desautorizado cualquier uso, acceso o copia de este mensaje. Si ha recibido este mensaje por error, por favor bórrelo e infórmenos por esta misma vía.
------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre     : myMod.py.zip
Tipo       : application/x-zip
Tamaño     : 294 bytes
Descripción: no disponible
Url        : http://runas.cap.gva.es/pipermail/gvsig_usuarios/attachments/20080904/459a026c/myMod.py.bin


Más información sobre la lista de distribución gvSIG_usuarios