python - Matplotlib pyplot:绘图数组混合了 y 轴标签
问题描述
我正在用 Python 编写一个简单的程序来绘制两个整数列表,一个数据一个时间轴。时间列表以 1 为增量从 0 变为 3,而数据列表包括:5,10, 3,12。我使用打印语句来验证列表确实具有上述值。
plt.plot(time_axis,data_array, 'ro')
plt.axis([0, 20, 0, 20])
plt.show()
但是,如图所示,绘图 y 轴是按照我的数据列表处理的顺序标记的,而不是升序:5、10、3、12
有没有办法让y轴以相等的增量增加到20?
编辑:我注意到只有当我使用列表作为参数时才会发生这种混淆:例如,
plt.plot([0,1,2,3],[5,10,3,12],'bo') #gives the correct graph while
plt.plot(time_axis,data_array,'bo') #gives the incorrect graph,
即使两个列表 time_axis 和 data_array 包含相同的值。追溯我的错误,我从文本文件中导入数据值,并且解析不正确,因此数据值不是整数。char 值的格式为 '5\n' 等,因此 numplot 变得混乱。修复解决了问题!
解决方案
推荐阅读
- performance - GoogleScript 将 JDBC ResultSet 加载到 Array 中非常慢/如何优化?
- reactjs - 为什么我在 React 中将获取的数据从 API 分配给 setState 时遇到问题?
- arrays - VBA FormulaArray 将数据从一个表拉到另一个表
- excel - 如何将 IF 公式与 Excel 中的下拉列表结合起来?
- django-models - 自定义 DjangoModelPermission
- python - 如何在 django 的单个视图中组合通用的“detailsView”和“CreateView”
- javascript - 格式化日期给了我一个与过去不同的日期
- java - 使用正则表达式检查 int/string 是否包含特定数字
- c++ - 从 C 中使用 C++ 对象
- java - 如何为配置了 Spring Security 的 SpringBoot API 编写单元测试