Um problema com o Temporal, deve ser classificado como um bug?

Nov 25 2020

Eu usei anteriormente o Temporal para animações sem nenhum problema, mas quando tentei uma nova animação hoje com "Campo único com data / hora", a entrada abaixo não mostrou a seta para baixo para selecionar o campo, clicar duas vezes na esquerda e na direita não fez diferença.
. Uma animação que funcionava anteriormente parou de funcionar e mostra o mesmo comportamento quando temporal é selecionado.

O arquivo em questão tinha colunas diferentes para data e hora. Portanto, modifiquei o arquivo para primeiro ter uma coluna apenas de data e, em seguida, uma coluna mesclada de data / hora. Exatamente o mesmo resultado, ou seja, a seta de seleção de campo não teve efeito. reiniciar o QGIS entre cada tentativa. Suspeito que o QGIS temporal foi corrompido e será necessário recarregar o QGIS.

Infelizmente essa não é a resposta. Eu removi / reinstalei o QGIS, mas o problema temporal original permanece. Alguma ideia? A única maneira de esse problema surgir é que Temporal foi modificado nas linhas if field type not Date then ignoreque explicariam por que uma animação que funcionava anteriormente falhou.

Eu tentei a calculadora de campo, mas o "campo de atualização" está esmaecido.

Os únicos dados necessários para uma animação são lat, lon & data (ou data / hora) os outros campos não são obrigatórios. Portanto, a solução é usar o arquivo csv simples em conjunto com o arquivo csvt.

Respostas

1 babel Nov 26 2020 at 21:35

O problema é que o QGIS não reconhece datas se elas estiverem armazenadas em um campo formatado como string. Nesse caso, o QGIS temporal não é capaz de reconhecer um campo de dados do tipo data e, portanto, você não pode selecionar nada. Isso explica o comportamento no seu caso, o que é exatamente o esperado neste caso. Parece que sua data foi convertida em uma string fieldtype quando você a importou. Consulte o blog de Anita Graser para obter uma solução:https://anitagraser.com/2011/03/07/how-to-specify-data-types-of-csv-columns-for-use-in-qgis/

Mas você não precisa importar tudo novamente. Você pode converter o campo de data existente criando um novo campo usando a calculadora de campo e convertendo a string para o tipo de data. Uso to_dateou to_datetimeexpressões. Para conselhos mais detalhados, inclua uma amostra (mesmo que seja uma captura de tela) do seu campo de data.


Atualizar: carregar dados

Eu carreguei três arquivos para que você não possa testar se tudo funciona como na minha máquina: data.csv- os dados de amostra que você forneceu como texto delimitado. data.gpkg- o mesmo convertido em um Geopacote. temporal_test.qgz - um projeto de teste com ambos os arquivos como camadas e configuração temporal ativada para a camada csv. Você encontra os dados aqui:https://drive.switch.ch/index.php/s/EE58pZKVfGKm8Ei

Portanto, tente todas as etapas a seguir que funcionarem para você:

Copiei as primeiras 4 linhas dos dados que você forneceu em sua captura de tela em uma folha de exel e salvei como csv utf-8 codificado. Importei esse arquivo para QGIS 3.16.0 no Win 10; Data Source Manager / Add Delimited Text Layere ativado Detect field types- veja a imagem:

Do que eu acessei Layer Properties / Tab Temporal. Lá, eu poderia facilmente selecionar o Datecampo que contém o carimbo de data / hora. Não encontrei o problema que você descreve:

O campo Data da camada de pontos csv importados é claramente reconhecido como sendo do tipo data, sem quaisquer alterações manuais: