2011-03-06 2 views
1

http://matplotlib.sourceforge.net/examples/api/histogram_path_demo.htmlМожете ли вы помочь мне понять этот код matplotlib о путях?

Я изучаю приведенный выше код. Что означает нижняя половина кода:

# we need a (numrects x numsides x 2) numpy array for the path helper 
# function to build a compound path 
XY = np.array([[left,left,right,right], [bottom,top,top,bottom]]).T 

Почему существует «.T» на конце? Что такое сложный путь?

# get the Path object 
barpath = path.Path.make_compound_path_from_polys(XY) 

Я не понимаю, что объект путь, может кто-то объяснить или указать мне на какой-то учебник?

ответ

1

Вспомогательная функция преобразует коллекцию полигонов в «составной путь», объект, который представляет все полигоны одновременно, поэтому вы можете вызывать одну операцию рисования вместо того, чтобы перебирать вашу коллекцию. В основном полезно получить лучшую скорость от matplotlib.

left, right и т.д. объекты являются п-мерные Numpy массивов, где п количество полигонов: left содержит координату Х левого края и т.д. Таким образом, массив [[left,left,right,right], [bottom,top,top,bottom]] имеет размеры (с выходом на вход) 2 x 4 xn (2 из-за двух измерений, 4 из-за четырехсторонних многоугольников, n - количество полигонов), но функция ожидает nx 4 x 2. .T возвращает транспонирование, которое удобно defined для многомерных массивов, так что он инвертирует порядок измерений.

Для получения дополнительной информации см. the API docs или the source code. Я не знаю никаких учебников о объектах пути matplotlib.

Смежные вопросы