【发布时间】:2021-09-08 10:03:20
【问题描述】:
我有 3 个 CSV 文件。所有文件都包含一列 (column name: Method)。每个 CSV 文件中包含 4 种不同类型的方法。
我可以创建一个plot,其中包含 1 个 CSV 文件的所有 4 种方法。代码如下
ROOT = Path(__file__).resolve().parent
CSVS = [
ROOT / "CSV_1.csv",
ROOT / "CSV_2.csv",
ROOT / "CSV_3.csv",
]
def accuracy_plot():
for csv in CSVS:
error_kind = csv.stem[: csv.stem.find("_")]
data = pd.read_csv(csv)
plt.figure(figsize=(8, 8))
sns.scatterplot(x="EC", y="MAE", data=data, hue="Method")
plt.title("MAE vs EC")
plt.xlabel("MAE")
plt.ylabel("EC")
plt.savefig(error_kind + ".png")
现在,我想为来自所有 CSV 文件的一种方法和数据创建一个图。更具体地说,我想要一个只显示一种方法信息但来自所有 3 个 CSV 文件的数据的图。在这个图中,我需要使用不同的符号(+、-、*)来识别来自不同数据集的数据。或者我们也可以给它们不同的颜色。最终,我将为 4 种不同的方法绘制 4 种不同的图。
你能告诉我我该怎么做这份工作吗?我使用了seaborn,但如果您想使用matplotlib,欢迎您。
【问题讨论】:
标签: python python-3.x pandas matplotlib seaborn