python - 如何在图中沿第三维绘制矩阵的多行?
问题描述
我有一个维度(3,25000)的矩阵,其中每一行都是维度(1,25000)的语音信号。我想在 3D 图中沿第三维绘制矩阵的行,类似于此-
请帮忙
解决方案
您可以使用 mplot3d。
将第一行视为表示“情绪”的分类轴(如链接中所示),第二行为 y 轴,第三行为 z 轴。
注意:从您的问题中不清楚该类别如何与您的 numpy 数组相关联。但是,您不能使用 matplotlib 中第一行情绪的字符数组来绘制数据,因此您必须检索这些类别的索引。
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
x,_=pd.factorize(<list of categories aligned with numpy array>[0]) #retrieving indices at categories
y=<your_array>[1]
z=<your_array>[2]
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.plot(x, y, z)
.
.
.
最后,您可以将 x 轴标签设置为:
ax.axes.set_xticks(x)
ax.axes.set_xticklabels(<insert list of your labels>)
推荐阅读
- tensorflow - 为什么 Tensorboard 与 rsync 一起使用时不刷新?
- java - 是否有必要单独测试每种方法?
- tensorflow - TensorFlow:如何启动 Profiler
- apache - 我的风暴拓扑在运行 10 天后失败
- c# - 由不同线程单独创建的对象仍然是共享的
- powershell - 访问哈希表不存在的属性在模块内外的行为不同
- reactjs - React-dates initialMonth 基于可用日期
- c# - 为什么 webjobs api 总是返回“已接受”状态而不是 200 Ok
- c# - ASP.Net Core - 如何向默认 Microsoft 标识结构添加新字段
- java - java静态地图不会在其他类中更新