Как выбрать нестандартный размер ячейки для 2D-гистограммы? - PullRequest
0 голосов
/ 08 июня 2018

Я уже знаю, как установить размер ячейки для 1D гистограммы после просмотра этого ответа , но я не знаю, как это сделать для 2D гистограммы.Я ссылался на страницы Numpy и Matplotlib для 2D-гистограмм, но все мои попытки отрегулировать размер ячейки не сработали / не запустились. Я хочу, чтобы мои ячейки имели длину20 и шириной 2.

Пример кода:

import numpy as np
import matplotlib.pyplot as plt
import math

dataX = np.random.uniform(-50,50,100)
dataY = np.random.uniform(-50,50,100)

binWidth = 2.0
binLength = 20.0

xMin = min(dataX)
xMax = max(dataX)
yMin = min(dataY)
yMax = max(dataY)

#this and all other similar attempts that I have tried did not run
np.histogram2d(dataX, dataY, bins = np.arange((xMin,xMax + binWidth),(yMin,yMin +binLength),(binWidth,binLength)))

Ждем ваших советов / помощи / совета.

1 Ответ

0 голосов
/ 08 июня 2018

Вы можете сделать, например,

plt.hist2d(dataX, dataY, bins = [np.arange(xMin, xMax, binWidth), np.arange(yMin, yMax, binLength)])

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

Из документов:

bins: int или array_like или [int, int] или [array, array], необязательно

Спецификация бункера:

   If int, the number of bins for the two dimensions (nx=ny=bins).
   If array_like, the bin edges for the two dimensions (x_edges=y_edges=bins).
   If [int, int], the number of bins in each dimension (nx, ny = bins).
   If [array, array], the bin edges in each dimension (x_edges, y_edges = bins).
   A combination [int, array] or [array, int], where int is the number of bins and array is the bin edges.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...