如何从csv文件中提取特定列并使用python绘图

时间:2012-07-21 00:05:04

标签: python csv plot

我有一个包含以下几行数据的csv文件:

# Vertex        X                Y                Z               K_I             K_II             K_III              J
  0       2.100000e+00      2.000000e+00     -1.000000e-04    0.000000e+00   0.000000e+00        0.000000e+00    0.000000e+00    
  1       2.100000e+00      2.000000e+00      1.699733e-01    8.727065e+00  -8.696262e-04        -1.800691e-04   3.465355e-04    
  2       2.100000e+00      2.000000e+00      3.367067e-01    8.907810e+00  -2.548819e-04        -2.789738e-04   3.610383e-04   

我想绘图:

顶点(第一列)与K_I(第五列)

顶点(第一列)与K_II(第六列)

顶点(第一列)与K_III(第7列)

如何从此文件中提取特定列,然后从列中绘制折线图?非常感谢任何帮助!

3 个答案:

答案 0 :(得分:2)

为了帮助您入门,您可以查找用于处理CSVCSVs库(以及制表符和其他分隔文件。有几种选项可用于绘制数据,但是matplotlib是您可能想要查看的绝佳选择。

虽然不完全是你想要的,但我在plotting from SQL Server using matplotlib and PyQT上发表的一篇文章刚刚发表,其中包括一些与matQlotlib一起用PyQT Gui绘图的相关例子。不过,我没有解决那里从CSV中提取数据的问题。

答案 1 :(得分:1)

pandas具有内置的可视化支持,使此任务非常简单。它比csv + matplotlib更直接,因为pandas为你提取了这些内容。

答案 2 :(得分:1)

import pandas as pd
frame = pd.read_csv('filename.csv', index_col=0)
frame.K_I.plot() # Vertex is the x-axis

也“frame.plot()”绘制所有列