我试图在3d中进行散点图,但我需要将点表示为正方形而不是圆形。我在Octave中有一个工作版本
scatter3(xPos,yPos,zPos,size,values,'s','filled')
但是,我需要在Python中做同样的事情,但我不认为点符号是GLScatterPlotItem中的一个选项,因为它与pyqtgraph中的ScatterPlotItem一样。
有没有人知道如何在pyqtgraph或任何其他绘图模块中执行此操作?
答案 0 :(得分:0)
您应该考虑使用体素。
下面的变量“ voxmap”是一个3d数组(x,y,z),其值1被设置为各个点。有关更多阅读,请查看:https://terbium.io/2017/12/matplotlib-3d/
例如voxmap [10,11,2] = 1。
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.voxels(voxmap, edgecolor='k')
ax.set_xlim(voxmap.shape[0], 0)
ax.set_ylim(0, voxmap.shape[1])
# add a bit to z-axis height for visualization
ax.set_zlim(0, voxmap.shape[2]+20)