gpt4 book ai didi

python - 使用 matplotlib 从 CSV 文件中绘制数据

转载 作者:IT老高 更新时间:2023-10-28 22:14:55 26 4
gpt4 key购买 nike

我在 e:\dir1\datafile.csv 有一个 CSV 文件。它包含三列和 10 个标题和尾随行,需要跳过。我想用 numpy.loadtxt() 来绘制它,我还没有找到任何严格的文档。

这是我从网上找到的几次尝试开始写的。

import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cbook as cbook

def read_datafile(file_name):
# the skiprows keyword is for heading, but I don't know if trailing lines
# can be specified
data = np.loadtxt(file_name, delimiter=',', skiprows=10)
return data

data = read_datafile('e:\dir1\datafile.csv')

x = ???
y = ???

fig = plt.figure()

ax1 = fig.add_subplot(111)

ax1.set_title("Mains power stability")
ax1.set_xlabel('time')
ax1.set_ylabel('Mains voltage')

ax1.plot(x,y, c='r', label='the data')

leg = ax1.legend()

plt.show()

最佳答案

根据docs numpy.loadtxt

a fast reader for simply formatted files. The genfromtxt function provides more sophisticated handling of, e.g., lines with missing values.

所以只有几个选项可以处理更复杂的文件。如前所述numpy.genfromtxt有更多选择。所以作为一个例子,你可以使用

import numpy as np
data = np.genfromtxt('e:\dir1\datafile.csv', delimiter=',', skip_header=10,
skip_footer=10, names=['x', 'y', 'z'])

读取数据并为列指定名称(或使用 names=True 从文件中读取标题行),然后使用

ax1.plot(data['x'], data['y'], color='r', label='the data')

我认为 numpy 现在有很好的文档记录。您可以轻松地从 ipython 中检查文档字符串或使用像 spider 这样的 IDE如果您更喜欢阅读呈现为 HTML 的内容。

关于python - 使用 matplotlib 从 CSV 文件中绘制数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13545388/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com