EDIT: зафиксированы пределы xyz для осей с последними 4 строками кода Теперь мне просто нужен ответ на отображение длины строки.Отображение длин линий в Matplotlib 3D Scatter
OK Это будет длинный вопрос. Я хотел бы (1) отобразить длину линий от центральной точки к отдаленным точкам и (2) исправить координаты оси, чтобы иметь поле ввода оси x от 0-6, ось y 0-6 и z- ось 0-6.
Код указан в данный момент. Я, наконец, получил правильную геометрию, но она выглядит все испорченной из-за установленного по умолчанию блока.
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
import math as m
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
x = [1, 5, 3, 3]
y = [1, 1, 1+(2* m.sqrt(3)), 1 +(2/3)*m.sqrt(3)]
z = [0, 0, 0, 4* m.sqrt(2)/m.sqrt(3)]
a = []
b = []
c = []
for item in x:
a.append(float(item))
for item in y:
b.append(float(item))
for item in z:
c.append(float(item))
r = np.array(a)
s = np.array(b)
t = np.array(c)
ax.set_xlabel("x axis")
ax.set_ylabel("y axis")
ax.set_zlabel("z axis")
ax.scatter(r,s,zs = t, s=200)
for x, y, z in zip(r, s, t):
ax.plot3D([x, 3], [y, 1+(2*(3**(1/2))/3)], [z, 4*(2**(1/2))/(3*(3**(1/2)))], 'b')
ax.set_ylim([0,6]). ##EDITED FIX TO AXES LABEL PROBLEM
ax.set_xlim([6,0])
ax.set_zlim([0,6])
plt.show()
выглядит следующим образом: (красный текст добавлен позже и то, что я хотел бы изменения, чтобы выглядеть)
Вы можете разместить код на рисунке в этом вопросе? – Lucas
попытайтесь сделать [минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve) – Lucas
Надеемся, что редактирование имеет смысл. – peer