Доступ к данным по осям гистограммы matplotlib - PullRequest
0 голосов
/ 21 октября 2019

Где хранятся данные, хранящиеся в объекте топора matplotlib, рисующем гистограмму?

Мой сценарий: я написал функцию, которая рисует пользовательскую гистограмму с помощью matplotlib. Я пишу модульный тест и хотел бы проверить, являются ли построенные данные

идеальным поведением:

import matplotlib.pyplot as plt

f, ax = plt.subplots()
ax.hist(some_data)
data_i_want = ax.plotted_data

1 Ответ

1 голос
/ 22 октября 2019

Я не уверен, чего именно вы хотите достичь, но функция plt.hist (...) возвращает данные для гистограммы:

histinfo = plt.hist(data)
histinfo[0] #This is the information about the # of instances
histinfo[1] #This is the information about the position of the bins

Если вы хотите получить информацию отСам график любой ценой (при условии, что у вас есть барплот):

container = ax.containers[0] #https://matplotlib.org/3.1.1/api/container_api.html
for rect in container: #https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.patches.Rectangle.html#matplotlib.patches.Rectangle
    print(rect.xy)

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

Ps .: Возможно, вам придется адаптировать код для конкретного экземпляра, но это способ получить некоторую информацию из сюжета. (Возможно, есть лучший способ сделать это, это лучшее, что я знаю)

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