Подграфик разброса для набора данных радужной оболочки

Я новичок в науке о данных. Я написал этот скрипт для построения всевозможных диаграмм рассеяния набора данных радужной оболочки. пытаясь не заговорить что-то с собой. как я могу оптимизировать свой код?


        from sklearn.datasets import load_iris
        import matplotlib.pyplot as plt
        import numpy as np
    
        import pandas as pd
    
        iris=load_iris()
    
        list1=[]
    
        fig, ax =plt.subplots(nrows=3,ncols=2,figsize=(10,10))
    
    for ii in range(4):
      for jj in range(1,4):
        if ii==jj:
          break
        if ii*jj not in list1[1::2]:
          list1.extend((ii+jj,ii*jj))
        elif ii+jj in list1[::2]:
          break
        a=ii
        b=jj
        x_index=ii
        y_index=jj
        colors=['blue','red','green']
        if ii==0:
          b=b-1
        elif jj==1:
          a=a-2
          b,a=a,b
        elif ii==3:
          a=a-1
          b=b-1
          a,b=b,a
        for label , color in zip(range(len(iris.target_names)),colors):
          ax[b,a].scatter(iris.data[iris.target==label,x_index] 
                  , iris.data[iris.target==label,y_index]
                  , label=iris.target_names[label]
                  , color=color)
    
        ax[b,a].set_xlabel(iris.feature_names[x_index])
        ax[b,a].set_ylabel(iris.feature_names[y_index])
        ax[b,a].legend(loc="upper right")
        fig.tight_layout()
        fig.show()

введите описание изображения здесь

это результат

как бы вы это написали, если бы это были вы?

Я ценю любую помощь.

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *