python - 根据文件中的位置绘制文件中的数字
问题描述
我正在根据它们在文件中的位置绘制一组数字。
例如,文件的前几行如下所示:
93
90
77
79
83
96
111
115
115
118
129
138
153
147
151
164
166
162
161
157
165
148
161
161
143
现在,我想根据文件中的行号绘制每个数字。
X axis - line number in the file
Y axis - the value of the number at that specific line
我编写了以下代码,它绘制了文件中前 5000 个数字的图形:
import matplotlib.pyplot as plt
import sys
X, Y = [], []
counter = 1
for line in open(sys.argv[1], 'r'):
X.append(float(counter))
Y.append(float(line))
counter = counter + 1
if counter > 5000:
break
plt.plot(X, Y)
plt.show()
该图如下所示:
但是,我希望 X 轴显示更详细的间隔,图表应如下所示:
解决方案
解释
您已经得到了几乎正确的结果,您需要做的就是更改要使用的图形类型。
代码
plt.bar(X, Y, align='center', width=0.2)
plt.show()
根据您需要的钢筋厚度更改宽度。
资源
https://matplotlib.org/api/_as_gen/matplotlib.pyplot.bar.html http://www.scipy-lectures.org/intro/matplotlib/matplotlib.html
推荐阅读
- r - RColorbrewer scale_fill_brewer 在图例键周围加上括号
- hadoop - Hive 分区方案及其对性能的影响
- r - 用“|”分割我的数据框中的字符向量 不工作
- javascript - Trying to understand how `${c}` in this string interpolation points to the elements in an array
- flutter - Flutter web get screen size
- kerberos - Keycloak:是否需要 MIT Kerberos 客户端?
- angular - Angular 构建中何时生成 index.html?
- python - 打开目录并读取不同的文件并将它们保存到不同的变量中,Python
- python - 编写和运行 DAG 任务的最简洁方法是什么?
- javascript - 选择值在jQuery中返回null