我正在搜索如何在每一列与每一列之间创建散点图。与这一问题类似的问题,我遵循了答案中的代码:
我所做的是:
columns = ['a','b','c','d','e','f']
for pos, axis1 in enumerate(columns):
for axis2 in enumerate(columns[pos+1:]):
plt.scatter(df.loc[:, axis1], df.loc[:, axis2].iloc[:,1])
但是在这种解决方案中,我将所有东西都放在一个图上,我想分开制作,如何实现呢?
Yehla有一个很好的解决方案,但是如果要在同一图形上绘制每个图,请创建一个新的plt.subplot()
each循环。
import math
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
col_count = 2
columns = list(df.columns)
row_count = math.ceil((len(columns)*len(columns))/col_count)
plt_dict = {}
count = 1
for k,v in enumerate(columns):
for column2 in columns[k:]:
ax = plt.subplot(row_count,col_count,count)
ax.set_title(f'{v} x {column2}')
ax.scatter(df[v],df[column2])
count += 1
plt.show()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句