pandas 在python中清楚地绘制散点图,每个刻度都可见

imzjd6km  于 2023-06-28  发布在  Python
关注(0)|答案(1)|浏览(95)

我有大约45个csv文件,每个文件包含两列13,000个条目,我想在一个散点图中绘制所有这些csv文件,并且不希望散点图的刻度彼此重叠,我希望所有刻度在散点图中清晰可见。
我附上下面的核心,我结合所有这些散点图,并将它们绘制在一个单一的情节。输出是一个散点图,这是每一个笨拙的理解的原因,我要求所有的点都清晰可见,没有重叠是研究他们为我的研究。

import os
import matplotlib.pyplot as plt
import pandas as pd

csv_directory = "Allplots/graphs"

csv_files = [file for file in os.listdir(csv_directory) if file.endswith(".csv")]

plt.figure(figsize=(12, 8))

all_indices = []
all_accuracies = []

for csv_file in csv_files:
    file_path = os.path.join(csv_directory, csv_file)
    df = pd.read_csv(file_path)
    
    bit_index = df[" Index"]
    accuracy = df["Accuracy"]
    
    all_bit_indices.extend(index)
    all_accuracies.extend(accuracy)

plt.scatter(all_indices, all_accuracies, s=10)

plt.xlabel("Index (Millions)", fontsize=12)
plt.ylabel("Accuracy", fontsize=12)
plt.title("Scatter Plot of Accuracy vs. Bit Index", fontsize=14)

# Save the plot as a PNG file
output_path = os.path.join(csv_directory, "scatter_plot.png")
plt.savefig(output_path)

plt.show()

scatter plot
我还想绘制这些CSV文件serailly说,第一部分的图形应该有点从csv1文件,然后csv2文件,然后等等,我不希望所有的csv文件的点混淆。

gab6jxml

gab6jxml1#

您可以在pyplot.scatter中使用各种标记参数。我建议降低s以获得更小的标记尺寸,更改marker = '.'(默认为'o')以获得更小的标记形状,和/或调整edgecolors = Noneedgecolors = 'face',使标记没有明显的轮廓。
例如:plt.scatter(all_indices, all_accuracies, s=1, marker = '.', edgecolors = 'face')

相关问题