<jupyter_start><jupyter_text>Scatterplot MatrixConstrói uma representação matricial, na qual cada célula contém um gráfico de dispersão para um determinado par de atributos. Para tanto, é utilizada a biblioteca [Plotly Express](https://plotly.com/python/plotly-express/) que permite a construção de elementos gráficos interativos.  **Em caso de dúvidas, consulte os [tutoriais da PlatIAgro](https://platiagro.github.io/tutorials/).**  Declaração de parâmetros e hiperparâmetrosDeclare parâmetros com o botão  na barra de ferramentas.A variável `dataset` possui o caminho para leitura do arquivos importados na tarefa de "Upload de dados".Você também pode importar arquivos com o botão  na barra de ferramentas.<jupyter_code># parameters
dataset = "/tmp/data/iris.csv" #@param {type:"string"}
target = "" #@param {type:"feature", label:"Atributo alvo (opcional)", description: "Você visualizará como as demais variáveis se distribuem quando coloridas por este atributo."}

# selected features to perform the model
model_features = "" #@param {type:"feature",multiple:true,label:"Features para incluir na visualização",description:"Selecione pelomenos duas features que deseja ver as distribuições em pares. Caso nada seja especificado, todas as features serão utilizadas"}<jupyter_output><empty_output><jupyter_text>Leitura do conjunto de dadosO exemplo abaixo faz a leitura de dados tabulares (ex: .csv).Modifique o código de acordo com o tipo de dado que desejar ler.<jupyter_code>import pandas as pd

df = pd.read_csv(dataset)<jupyter_output><empty_output><jupyter_text>Plota gráfico com as dispersões para os possíveis pares de atributos.<jupyter_code>import plotly.express as px

# dimensões para serem visualizadas
if len(model_features) <= 1:
    dimensions = df.columns.to_list()
else:
    dimensions = model_features

# target para colorir
if target:
    fig = px.scatter_matrix(df, dimensions=dimensions, color=target, opacity=0.9)
else:
    fig = px.scatter_matrix(df, dimensions=dimensions, opacity=0.9)

fig.update_layout(
    title="Distribuição em pares"
)

fig.show()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.08617424242424243, 'fraction_numerical': 0.0023674242424242425, 'mean_word_length': 5.996688741721854, 'pattern_counts': {'":': 0, '<': 14, '<?xml version=': 0, '>': 13, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '177780', 'license': 'MIT', 'n_tokens_mistral': 711, 'n_tokens_neox': 710, 'n_words': 218, 'path': 'tasks/scatter-matrix/Experiment.ipynb', 'repo_name': 'vitoryeso/tasks', 'size': '2112'}