Python 在3D绘图中,多个散射点如何通过一条线连接?
我想用一条线连接分散点,使图表更清晰易读 Zaxis是datetime格式的,所以我想这很棘手 这就是df的样子Python 在3D绘图中,多个散射点如何通过一条线连接?,python,pandas,matplotlib,3d,Python,Pandas,Matplotlib,3d,我想用一条线连接分散点,使图表更清晰易读 Zaxis是datetime格式的,所以我想这很棘手 这就是df的样子 X Y datum 15 -1.0 1.0 2006-04-29 16 0.5 1.0 2007-09-29 17 0.0 -0.5 2008-04-26 18 1.0 0.5 2010-10-30 19 -0.5 -1.0 2015-05-30 import pandas as pd import numpy as np import mat
X Y datum
15 -1.0 1.0 2006-04-29
16 0.5 1.0 2007-09-29
17 0.0 -0.5 2008-04-26
18 1.0 0.5 2010-10-30
19 -0.5 -1.0 2015-05-30
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as dates
import matplotlib as mpl
import datetime
import matplotlib.ticker as ticker
from mpl_toolkits.mplot3d import Axes3D
comm_dates=[mpl.dates.date2num(t) for t in comm.datum]
def format_date(x,pos=None):
return dates.num2date(x).strftime("%Y-%m-%d")
fig=plt.figure()
ax=Axes3D(fig,rect=[0,0.1,1,1])
xs=comm.X
ys=comm.Y
zs=np.array(comm_dates)
ax.scatter(xs,ys,zs, zdir=zs,color="b")
ax.w_zaxis.set_major_locator(ticker.FixedLocator(comm_dates))
ax.w_zaxis.set_major_formatter(ticker.FuncFormatter(format_date))
for tl in ax.w_zaxis.get_ticklabels():
#tl.set_ha("left")
tl.set_rotation(-10)
我试图加几行,但把整个图表弄乱了
非常感谢您的帮助 将这一行添加到您的
ax.scatter()调用下面:
ax.plot(xs, ys, zs, zdir=zs, color="b", alpha=0.4)