gráfico de dispersão de atualização do python matplotlib de uma função

Estou tentando atualizar automaticamente um gráfico de dispersão. A fonte dos meus valores X e Y é externa e os dados são inseridos automaticamente no meu código em intervalos de tempo não previstos (rodadas).

Eu só consegui plotar todos os dados quando todo o processo terminou, enquanto estou tentando constantemente adicionar e plotar dados na minha tela.

O que eu recebo (no final de toda a execução) é o seguinte:

Visto que o que estou procurando é o seguinte:

Uma versão simplificada do meu código:

import matplotlib.pyplot as plt

def read_data():
    #This function gets the values of xAxis and yAxis
    xAxis = [some values]  #these valuers change in each run
    yAxis = [other values] #these valuers change in each run

    plt.scatter(xAxis,yAxis, label  = 'myPlot', color = 'k', s=50)     
    plt.xlabel('x')
    plt.ylabel('y')
    plt.show()

questionAnswers(2)

yourAnswerToTheQuestion