python - 尝试创建子图但不断收到 ValueError 消息
问题描述
我正在尝试使用 plt.subplots 方法绘制 2 个具有相同 X 轴的简单图形。
data1 = np.load("data.npy") #loading numpy arrays to be plotted on y axis. both are same length.
data2 = np.load("data2.npy")
x1 = np.arange(100,len(fddata),100) # share x axis. set to have same length
fig, (ax1,ax2) = plt.subplots(nrows=2, ncols=1, sharex = True)
ax1.plot(x1, data1)
ax2.plot(x1, data2)
plt.show()
但是,使用此代码不会创建图表。我收到错误消息“ValueError:x 和 y 必须具有相同的第一维,但具有形状 (62,) 和 (18598,)”。即使我的 X 和 Y 数据应该是相同的大小。我只是想知道是什么导致了这种情况,因为我已经检查过但不确定。谢谢你。
解决方案
你 x1 必须像这样定义。
x1=np.arange(len(data1))
否则你会得到一个更短的数组。
或者更一般地说,您可以使用
x1=np.linspace(x_min,x_max,len(data1))
这为您提供了区间 [x_min,x_max] 上的等距点
推荐阅读
- compression - Install4J 何时支持 JRE 12?
- excel - 如何从 Visio 连接到 Excel 并在矩形上显示工作表名称并在相应矩形的一侧列出一行内容?
- javafx - 我正在制作一个 javafx 应用程序来绘制一些 3D 数据并想为其添加一些照明
- python - Why does time.sleep wait sometime, but other times it "jumps to the end"
- r - case_when with partial string match and contains()
- ruby-on-rails - 由于 psql 权限,无法在生产环境中执行 rake 任务
- node.js - NodeJS Mongoose 关系外键
- excel - 如何将路径声明为变量?
- python - 计算属于一本字典一部分的字典数量
- python - 如何开始写入文本文件 2 行