Как я могу быстро прочитать файл? - PullRequest
0 голосов
/ 06 февраля 2019

Почему я должен ждать (30 секунд или больше), когда пытаюсь построить почти 30 МБ данных?Моя структура данных в списке?Или я должен использовать какой?

import matplotlib.pyplot as plt

x1=[]
y1=[]
with open("C:\\Users\\Desktop\\33mb.txt","r") as f4:
    for line in f4:
        data=line.split(",")
        if data[0] == "b'$GNGGA": 
            x1.append(float(data[1]))      #plot_x
            y1.append(float(data[1]))      #plot_y
            plt.plot(x1,y1)                #plot_()
            print("0")         
    print("finished")
    plt.show()                             #plot_show()
print("........................")

Он читает 33 МБ менее чем за одну секунду (с выводом тысяч «0») при удалении сценариев построения.

Любая помощь будетоценили.

1 Ответ

0 голосов
/ 06 февраля 2019
import matplotlib.pyplot as plt

x1=[]
y1=[]
with open("C:\\Users\\Desktop\\33mb.txt","r") as f4:
    for line in f4:
        data=line.split(",")
        if data[0] == "b'$GNGGA": 
            x1.append(float(data[1]))      #plot_x
            y1.append(float(data[1]))      #plot_y
            print("0")         
    print("finished")
    plt.plot(x1,y1)                #plot_()
    plt.show()                             #plot_show()
print("........................")

Должно работать как нужно. plt.plot () может рисовать все содержимое таблицы одновременно.Если вы делаете это в цикле, вы постоянно рисуете и перерисовываете после добавления каждой новой точки, насколько я понимаю, это не намерение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...