Отображение двух файлов данных с использованием Matplotlib - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть два CSV-файла, которые создают растровое изображение, каждый размером 300x300.

Я могу заставить программу отображать одну, но если я пытаюсь отобразить обе, она просто создает пустой белый график.Все, что я хочу показать, это два набора данных в виде отдельных изображений, их не нужно никоим образом менять.

import csv
import matplotlib.pyplot as plt
import math

lidar = []  # height of object
radar = []  # texture of object

with open('lidar1.csv', newline='') as f:
    reader = csv.reader(f, quoting=csv.QUOTE_NONNUMERIC)
    for row in reader:
        rowlist = []
        for value in row:
            rowlist.append(value) 
        lidar.append(rowlist)


with open('radar1.csv', newline='') as f:
    reader = csv.reader(f, quoting=csv.QUOTE_NONNUMERIC)
    for row in reader:
        rowlist = []
        for value in row:
            rowlist.append(value) 
        radar.append(rowlist)

plt.imshow(lidar) 

Ответы [ 2 ]

0 голосов
/ 25 сентября 2019

Вы можете использовать plt.show для построения каждой фигуры в отдельности:

plt.imshow(lidar) 
plt.show()
plt.imshow(radar)
plt.show()

Или сделать как @ norok2, предложенный с использованием подзаговоров

fig, ax = plt.subplots(1, 2, figsize = [10, 20])
ax[0].imshow(lidar)
ax[1].imshow(radar)
plt.show()
0 голосов
/ 25 сентября 2019

Вам нужно создать 2 фигуры, чтобы они отображались отдельно, как показано на рисунке.

f1 = plt.figure()
plt.plot(lidar)
f2 = plt.figure()
plt.plot(rowlist)
...