python - 如何从 .txt 文件中绘制图形(y 轴设置)?
问题描述
我正在尝试绘制图形以显示.txt
文件中的值,现在我在设置 y 轴格式时遇到问题,尽管我使用与文件命令相同的命令.CSV
。如果我y-lim
通过 using设置my_y_ticks = np.arange(-100, 1000, 100)
,则间隔不是100
,而且很难识别 y 轴值。我从.txt
数据库中粘贴了一些原始值。
01/05/2016 00:01:00 313,000000 U 42491,000694 -1,87
01/05/2016 00:02:00 313,000000 U 42491,001389 -1,87
01/05/2016 00:03:00 313,000000 U 42491,002083 -1,87
01/05/2016 00:04:00 313,000000 U 42491,002778 -1,87
01/05/2016 00:05:00 313,000000 U 42491,003472 -1,87
01/05/2016 00:06:00 313,000000 U 42491,004167 -1,87
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
df = pd.read_csv('WHV_Wasserstand_2016-2018.txt', sep = '\t') #open file
x = df.iloc[:,0] #choose values from txt file
y = df.iloc[:,2] #choose values from txt file
x = pd.to_datetime(x) #transfer to date-time format
plt.ylim((-100,1000))
my_y_ticks = np.arange(-100, 1000, 100) #this code doesn't work!
plt.plot(x,y)
plt.xticks(rotation = 90)
plt.show()
这是我的实际结果:
解决方案
我没有测试过,但立即脱颖而出的是您的参数np.arange()
不会产生 100 个值的间隔。当给定三个值时,numpy.arange()
使用第一个参数作为间隔的开始,第二个作为间隔的结束,第三个作为“步长”,表示这个间隔中数字之间的间距。您的函数将为您提供如下值:
>>> np.arange(-100,1000,100)
array([-100, 0, 100, 200, 300, 400, 500, 600, 700, 800, 900])
它在 900 处停止,因为结束间隔是独占的。考虑这些是否是您要传递的值my_y_ticks
推荐阅读
- javascript - 模块 如何更改导入脚本中的变量?
- angular - 如何在角度/打字稿中制作嵌套数据模型
- python - Python Selenium - 找不到正确的元素。登录按钮
- openstreetmap - 是否有一个列表来描述每个缩放级别显示 OSM 中的哪些地图功能?
- sql - 将 JSON KEY 映射为 INSERT QUERY 中的列名
- javascript - 如何防止表单多次提交到支付网关以避免多次交易(它的支付应用程序)
- python - 如何将预测值分布映射到三角数据分布?
- python - 将 pulumi_azure.compute.LinuxVirtualMachineScaleSet 实例附加到 pulumi_azure.network.ApplicationGateway 的后端池
- ms-access - 如何在访问中显示用户定义的符号列表(插件)?
- filter - 来自 mod_jk 的查询在 apache2 中重定向的顺序是什么?