Есть ли способ варьировать длины отдельных стрелок на участке колчана?Vary длина стрел в осях Matplotlib Axes3D.quiver
Я создал сюжет с помощью:
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 (* арг, ** 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 | Поплавок] Отношение головы стрелки относительно колчана, по умолчанию 0.3 Любые дополнительные именованные аргументы делегированы LineCollection
Просто для уточнения, величина векторов отличается до 30 раз Таким образом, должна быть очень заметная разница.
Что происходит, когда вы используете аргумент длины? – cphlewis
Он одинаково масштабирует все стрелы, извините, должен был упомянуть об этом. Я больше смотрел на «matplotlib» на Github, и я уверен, что он нормализует каждый вектор '(u_i, v_i, w_i)^T'. –
Вы правы. Вы можете разделить данные по классам длины и «колчану» каждый отдельно. Хотя, глядя на это, это полезно для отображения данных? Разве читатель не может быть смущен между короткими стрелками и стрелками, почти перпендикулярными плоскости изображения? Может быть, вариация цвета? – cphlewis