【发布时间】:2020-12-19 00:58:31
【问题描述】:
我需要从 csv 文件中绘制数据。 yvalues 不是按顺序排列的,这就是我需要对它们进行排序的原因。我旋转 x 轴,因为字符串很长。可以吗?
####My data:####
####Code:#####
x = []
y = []
with open('output.csv','r') as csvfile:
plots = csv.reader(csvfile, delimiter=',')
for row in plots:
x.append(row[1])
y.append(row[2])
plt.plot(x[1:],y[1:], label='Loaded from file!')
plt.xlabel('x')
plt.xticks(rotation=90)
plt.ylabel('y')
plt.title('Interesting Graph\nCheck it out')
plt.legend()
plt.gcf().autofmt_xdate()
plt.show()
【问题讨论】:
-
您应该将
x和y放在一个列表中data = [ [x1, y1], [x2, y2], ... ]- 这样您就可以阅读data = list(plots)- 然后您可以使用data.sort(key=lambda i:i[1])或sorted(data, key=lambda i:i[1])。之后,您应该将其拆分为单独的列表。或阅读pandas.DataFrame
标签: python python-3.x pandas matplotlib