我正在从2列文本文件中绘图,其中第1列是x值,第2列是y值。我的问题是,当标记-3.0
显示为大于-1.5
时。如何正确显示x轴?
我的代码是:
import matplotlib.pyplot as plt
#open and read file
with open('01_points.txt','r') as file:
content = [i.strip().split("\t") for i in file.read().splitlines()]
#set x and y values, ignore blank lines
x = [i[0] for i in content if len(i)>=2]
y = [i[1] for i in content if len(i)>=2]
#format and show the plot
plt.plot(x, y)
plt.xlabel('x')
plt.ylabel('y')
plt.axis('tight')
plt.show()
结果如下:
我不确定这是否是问题的根源,但文件的前几行是:
0.0 0.0
-1.5 1.5
-3.0 3.0
-1.5 4.5
答案 0 :(得分:0)
将您从文件中读取的字符串转换为浮点数:
x = [float(i[0]) for i in content if len(i)>=2]
y = [float(i[1]) for i in content if len(i)>=2]
否则matplotlib按字典顺序对字符串进行排序,'-1.5'
小于-3.0'
。