Para quem ainda procura uma resposta para isso sem usar um formato espacial, encontrei algo que funciona.
Se você possui um csv e usa uma associação para associá-lo a uma camada espacial, uma das opções da associação é armazenar em cache a camada. Você pode acessar essa opção se acessar as propriedades da sua camada, acessar os dados associados e clicar em editar associação. Se você desabilitar a opção de cache , poderá recarregar a camada de dados após a alteração do csv e acionar uma nova pintura do seu mapa para obter uma visualização atualizada do mapa.
Você pode recarregar e repintar no console Python. Primeiro, você precisa definir um nome para a tela do mapa, o csv e para a camada:
mc = iface.mapCanvas()
layer=mc.currentLayer()
csv_layer=mc.currentLayer()
Certifique-se de ter as camadas ativas ao nomeá-las no console ao usar o método currentLayer (deve ser a 'camada atual').
Então, se você definir a opção de cache como desativada para sua associação, poderá alterar o csv e, em seguida, usar os dois comandos a seguir no console do Python para redesenhar seu mapa:
csv_layer.reload()
layer.triggerRepaint()
Isso funcionou para mim, mas eu só tinha 100 linhas de dados. Pode ser que as operações sejam lentas sem armazenamento em cache quando você tiver um conjunto de dados maior.