绘制数据框每 15 行的散点图?

Plotting a scatter plot of each 15 rows of a dataframe?

我想创建一个包含 800 行的数据框的散点图。我不想将它们绘制在整个图表中,而是想将图表按数据框的 15 行分开。结果我应该看到 54 个图表。 我如何使用 python?

来做到这一点

我在数据框中创建了一些包含两列的随机数据。然后,您可以使用 numpy 循环遍历数据帧的每 15 行(不要使用 DataFrame.iterrows,因为它效率极低),并为每个数据块创建一个简单的散点图。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

np.random.seed(1234)
data = np.random.rand(800,2)
df = pd.DataFrame(data=data, columns=['x','y'])

## split the dataframe into 54 chunks, this is hardcoded since you specified that your dataframe contains 800 rows = 15 rows x 54
for index, df_chunk in enumerate(np.array_split(df, 54)):
    plt.scatter(df_chunk.x, df_chunk.y)

    ## this will immediately save 54 scatter plots, numbered 1-54, be warned! 
    plt.title('Scatter Plot #' + str(index+1))
    plt.savefig('./scatter_plot_' + str(index+1) + '.png')

    ## clear the figure
    plt.clf()

下面是我创建的 54 个散点图之一。随意修改标题、x- 和 y-axis 标题、标记颜色和类型。