Un problema con Temporal, ¿debería clasificarse como un error?

Nov 25 2020

Anteriormente usé Temporal para animaciones sin ningún problema, pero cuando probé una nueva animación hoy con "Campo único con fecha / hora", la entrada a continuación no mostró la flecha hacia abajo para seleccionar el campo, el doble clic L & R no hizo diferencia.
. Una animación que funcionaba anteriormente ha dejado de funcionar y muestra el mismo comportamiento cuando se selecciona temporal.

El archivo en cuestión tenía diferentes columnas para la fecha y la hora. Así que modifiqué el archivo para que primero tuviera una columna de solo fecha y, en segundo lugar, una columna de fecha / hora combinada. Exactamente el mismo resultado, es decir, la flecha de selección de campo no tuvo ningún efecto. reiniciando QGIS entre cada intento. Sospecho que QGIS temporal se ha corrompido y necesitará volver a cargar QGIS.

Desafortunadamente, esa no es la respuesta que eliminé / reinstalé QGIS, pero el problema temporal original permanece. ¿Algunas ideas? La única forma en que podría surgir este problema es que Temporal se modificó en las líneas if field type not Date then ignoreque explicarían por qué falló una animación que funcionaba anteriormente.

He probado la calculadora de campo, pero el "campo de actualización" está atenuado.

Los únicos datos requeridos para una animación son lat, lon y fecha (o fecha / hora), los otros campos no son obligatorios. Entonces, la solución es usar un archivo csv simple junto con un archivo csvt.

Respuestas

1 babel Nov 26 2020 at 21:35

El problema es que QGIS no reconoce las fechas si están almacenadas en un campo formateado como cadena. En este caso, QGIS temporal no puede reconocer un campo de datos de tipo fecha y, por lo tanto, no puede seleccionar nada. Eso explica el comportamiento en su caso que es exactamente el esperado en este caso. Parece que su fecha se convirtió en un tipo de campo de cadena cuando la importó. Consulte el blog de Anita Graser para obtener una solución:https://anitagraser.com/2011/03/07/how-to-specify-data-types-of-csv-columns-for-use-in-qgis/

Pero no tiene que volver a importar todo. Puede convertir el campo de fecha existente creando un nuevo campo usando la calculadora de campo y convirtiendo la cadena al tipo de fecha. Uso to_dateo to_datetimeexpresiones. Para un consejo más detallado, por favor incluya una muestra (incluso si es una captura de pantalla) de su campo de fecha.


Actualización: cargar datos

Subí tres archivos para que no pueda probar si todo funciona como lo hace en mi máquina: data.csv- los datos de muestra que proporcionó como texto delimitado. data.gpkg- el mismo convertido a un Geopackage. temporal_test.qgz: un proyecto de prueba con ambos archivos como capas y una configuración temporal activada para la capa csv. Encuentra los datos aquí:https://drive.switch.ch/index.php/s/EE58pZKVfGKm8Ei

Así que intente que todos los siguientes pasos funcionen para usted:

Copié las primeras 4 filas de los datos que proporcionó en su captura de pantalla en una hoja de Excel y la guardé como csv utf-8 codificado. Importé ese archivo a QGIS 3.16.0 en Win 10; Data Source Manager / Add Delimited Text Layery activado Detect field types- ver captura de pantalla:

De lo que accedí Layer Properties / Tab Temporal. Allí, pude seleccionar fácilmente el Datecampo que contiene la marca de tiempo. No encontré el problema que describe:

El campo Fecha de la capa de puntos csv importados se reconoce claramente como del tipo de fecha sin ningún cambio manual: