Увеличьте стрелки в графике Axis3Dquiver Matplotlib

Есть ли способ изменить длину отдельных стрелок на участке колчана?

Я создал сюжет, используя:

lines_to_draw = list of numpy 3d vectors xs, ys, zs = list of coordinates us, vs, ws = list of displacements fig = plt.figure() ax = fig.add_subplot(111, projection='3d') for line in lines_to_draw: ax.plot(line[:,0], line[:,1], line[:,2], color='green' ax.quiver(xs, ys, zs, us, vs, ws) 

Это выглядит так (оси выключены): Участок колчана

Проблема в том, что все стрелки выглядят одинаково. Документы предполагают, что это, вероятно, так (в частности, аргумент length ):

Axes3D.quiver (* args, ** kwargs) Запланируйте 3D-поле стрелок.

подписи вызовов:

колчан (X, Y, Z, U, V, W, ** kwargs) Аргументы:

X, Y, Z: координаты x, y и z расположения стрелок

U, V, W: вектор направления, на который указывает стрелка. Аргументы могут быть массивами или скалярами, если они могут быть переданы вместе. Аргументами могут быть также маскированные массивы. Если элемент в любом аргументе замаскирован, то соответствующий элемент колчана не будет отображаться.

Аргументы ключевого слова:

длина: [1.0 | float] Длина каждого колчана, по умолчанию 1.0, единица совпадает с осями

arrow_length_ratio: [0,3 | float] Отношение головы стрелки к колчану, по умолчанию 0.3. Любые дополнительные аргументы ключевых слов делегируются в LineCollection

Только для уточнения величина векторов отличается на 30 раз. Поэтому должна быть очень заметная разница.

One Solution collect form web for “Увеличьте стрелки в графике Axis3Dquiver Matplotlib”

Это будет возможно в следующей крупной версии MPL, см. Этот запрос на растяжение .

Hack: вы можете отредактировать соответствующие файлы MPL в вашей системе, см. Этот ответ.

Альтернативно: ax.quiver команду ax.quiver для каждой стрелки с индивидуальным атрибутом length . Это не очень эффективно, но в некоторых случаях это может помочь.

  • Пример кода matplotlib throws TclError
  • Как разместить таблицу на графике в Matplotlib?
  • Добавить информацию в matplotlib Панель инструментов навигации / строка состояния?
  • matplotlib hist () диапазон автозагрузки
  • ipython notebook --pylab inline: масштабирование сюжета
  • Как очистить изображения в Python / Django?
  • Есть ли способ передать разные вертикальные линии каждому подзаговору при использовании гистограммы панды с помощью «by = somevar»?
  • matplotlib.patches.FancyArrow имеет разреженный хвост
  • tkinter и matplotlib: окна не отображаются, пока программа не закрывается под Linux
  • Отображение 3 гистограмм на 1 оси четким способом - matplotlib
  • Преобразование блоков данных matplotlib в нормализованные единицы
  • Python - лучший язык программирования в мире.