【发布时间】:2021-12-14 08:12:14
【问题描述】:
我正在尝试制作一个程序,该程序使用 csv 文件中的给定点绘制图形,该文件包含每行 4 个字符串(点数、x pos、y pos、颜色),但所需时间是高得离谱,所以我正在寻找使其更快的想法。
from matplotlib import pyplot as plt
from matplotlib import style
import csv
style.use('ggplot')
s = 0.5
with open('total.csv') as f:
f_reader = csv.reader(f, delimiter=',')
for row in f_reader:
plt.scatter(str(row[1]), str(row[2]), color=str(row[3]), s=s)
plt.savefig("graph.png", dpi=1000)
【问题讨论】:
-
如果您只需要了解数据中的趋势,请随机对点进行二次采样,并且仅显示 1k。无论哪种方式,读取所有数据并且只调用 scatter 一次(或者如果您对某些点有特定颜色,则每种颜色调用一次)将比为每个点调用 scatter 快得多
标签: python matplotlib graph scatter