matplotlib绘制三维轨迹图

1. 绘制基本三维曲线

# import necessary module
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np

# load data from file
# you can replace this using with open
data1 = np.loadtxt("./pos.txt")
# print (data1)
num=data1.size


datax = data1[:, 0]
datay = data1[:, 1]
dataz = data1[:, 2]

print (datax)
print (datay)
print (dataz)

numx=datax.size
print(numx)
numy=datay.size
print(numy)
numz=dataz.size
print(numz)

# new a figure and set it into 3d
fig = plt.figure()
ax = fig.gca(projection='3d')

# set figure information
ax.set_title("3D_Curve")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")

# draw the figure, the color is r = read
figure = ax.plot(datax, datay, dataz, c='r')

plt.show()

在这里插入图片描述

2. 同一张图中绘制多个三维曲线

# import necessary module
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np
from pylab import *

# load data from file
# you can replace this using with open
data1 = np.loadtxt("./pos.txt")
datax = data1[:, 0]
datay = data1[:, 1]
dataz = data1[:, 2]

data2 = np.loadtxt("./pos.txt")
data2x = data2[:, 0]
data2y = data2[:, 1]
data2z = data2[:, 2]

# new a figure and set it into 3d
fig = plt.figure()
ax = fig.gca(projection='3d')


# set figure information
ax.set_title("3D_Curve")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")

# draw the figure, the color is r = read
figure1 = ax.plot(datax, datay, dataz, c='r',marker='*',linestyle='--')
figure2 = ax.plot(data2x, data2y, data2z+0.01, c='b',marker='^',linestyle='-')
plt.show()

在这里插入图片描述

3. 将区域划分后绘制三维图像

# import necessary module
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np
from pylab import *

# load data from file
# you can replace this using with open
data1 = np.loadtxt("./pos.txt")
datax = data1[:, 0]
datay = data1[:, 1]
dataz = data1[:, 2]

data2 = np.loadtxt("./pos_ros.txt")
data2x = data2[:, 0]
data2y = data2[:, 1]
data2z = data2[:, 2]


# new a figure and set it into 3d
fig = plt.figure()
# ############ first subplot ############
ax = fig.add_subplot(3, 3, 1, projection='3d')
# ax = fig.gca(projection='3d')


# set figure information
ax.set_title("3D_Curve")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")

# draw the figure, the color is r = read
figure1 = ax.plot(datax, datay, dataz, c='r',marker='*',linestyle='-')
# figure2 = ax.plot(data2x, data2y, data2z, c='b',marker='^',linestyle='-')


# plt.figure(1)

# ############ second subplot ############
ax = fig.add_subplot(3, 3, 2, projection='3d')

# set figure information
ax.set_title("3D_Curve2")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")

# draw the figure, the color is r = read
# figure1 = ax.plot(datax, datay, dataz, c='r',marker='*',linestyle='-')
figure2 = ax.plot(data2x, data2y, data2z, c='b',marker='^',linestyle='-')

# ############ third subplot ############
ax = fig.add_subplot(3, 3, 3, projection='3d')

# set figure information
ax.set_title("3D_Curve3")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")

# draw the figure, the color is r = read
figure1 = ax.plot(datax, datay, dataz, c='r',marker='*',linestyle='-')
figure2 = ax.plot(data2x, data2y, data2z+0.01, c='b',marker='^',linestyle='-')

plt.show()

在这里插入图片描述

4. plot

5.reference

https://blog.youkuaiyun.com/qq_34859482/article/details/80617391

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大江东去浪淘尽千古风流人物

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值