Список графиков с разным размером - PullRequest
0 голосов
/ 06 октября 2019

Учитывая список списков, я пытаюсь нарисовать каждую строку другим цветом, но получаю ошибку:

ValueError: x и y должны быть одинакового размера

lists = 

    0     [[44.9597, 7.7825], [44.9646, 7.7816], [45.1206, 7.7115]]
    1     [[45.0021, 7.6733], [45.003, 7.6678]]
    2     [[45.0746, 7.5985], [45.0735, 7.5956],[44.9706, 7.704],[45.0811, 7.5511]
    3     [[45.1205, 7.7116]] 

Итак, в каждом ряду первое число в [] - это y, а второе - x

Я пробовал matplotlib и seaborn

1 Ответ

2 голосов
/ 06 октября 2019

Вы можете использовать функцию matplotlib s scatter(x,y) вместе с numpy:

import numpy as np
import matplotlib.pyplot as plt

lists = np.array([[[44.9597, 7.7825], [44.9646, 7.7816], [45.1206, 7.7115]], \
                  [[45.0021, 7.6733], [45.003, 7.6678]], \
                  [[45.0746, 7.5985], [45.0735, 7.5956],[44.9706, 7.704],[45.0811, 7.5511]], \
                  [[45.1205, 7.7116]]])

plt.figure()
for l in lists:
    ar = np.array(l)  # convert to numpy array for use of indices in next line
    plt.scatter(ar[:,1], ar[:,0]) 
plt.show()

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