Как избавиться от линии, соединяющей точки при повторном запуске цикла? - PullRequest
0 голосов
/ 17 января 2019

У меня в руке есть данные, которые состоят из 26 миллионов строк (температура и глубина). Температура измеряется до тех пор, пока оборудование не достигнет 12000 метров, а затем снова запускается (конечно, каждый раз, когда оно получает разные значения температуры). Я знаю, что этот вопрос задавался раньше, но этот случай немного отличается. Я не могу просто удалить цикл, но мне нужно как-то избавиться от этой строки:

enter image description here

import matplotlib.pyplot as plt
import csv

x = []
y = []

with open('DTS.txt', 'r') as csvfile:
    next(csvfile)
    plots = csv.reader(csvfile, delimiter=';')
    try:
        for row in plots:
            x.append(float(row[1]))
            y.append(float(row[2]))
    except UnicodeDecodeError:
        pass
plt.plot(x, y)
plt.title('DTS results between 21-26th of June')
plt.xlabel('Depth')
plt.ylabel('Temperature')
plt.grid()
plt.show()

1 Ответ

0 голосов
/ 17 января 2019

По умолчанию plot() отображает синюю линию, соединяющую ваши точки данных, поэтому вы можете попытаться указать, что вы хотите, чтобы функция делала.

попробуйте что-нибудь на линии plot(x,y, linestyle = "", marker = "o")

это должно заменить строку точками, надеясь избавиться от линии, не прерывая цикл.

В качестве альтернативы вы можете посмотреть на функцию scatterplot

Как общие комментарии:

  • пожалуйста, проверьте matplotlib plot() страница для синтаксиса и аргументов для графических настроек
  • предоставить минимальный пример с данными для воспроизведения ошибки. Мой ответ - предположение, без примеров данных я не могу проверить решение
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...