%% DIAGRAMMA DI DISPERSIONE DINAMICO
% Per saperne di più sui controlli che si possono aggiungere ai live scripts

% Importazione dei dati dentro MATLAB
X = readtable("benSPM.xlsx", 'Sheet','X (database originale)','range','A3:H106','ReadRowNames',true);
colnam=X.Properties.VariableNames;
rownam=X.Properties.RowNames;
colnamStringFormat=string(colnam);

%
%% SLIDERS
% Grafico a dispersione tra due generiche variabili i e j del dataset (i,j=1,2, ...7).
% Le variabili possono essere selezionate tramite sliders

% Colonne i e j da inserire nel grafico definite come sliders
i=3;
j=5;
etichette=false;

plot(X{:,i},X{:,j},'o')
% Titolo sull'asse x
xlabel(colnam(i))
% Titolo sull'asse y
ylabel(colnam(j))
% Aggiungo al grafico le etichette dei punti
if etichette==true
    text(X{:,i},X{:,j},rownam)
end

%
%% CASELLE A DISCESA
% Grafico a dispersione tra due generiche variabili i e j del dataset (i,j=1,2, ...7).
% Le variabili possono essere selezionate tramite caselle a discesa

% Colonne i e j da inserire nel grafico definite come caselle a discesa
% Variabile da inserire sull'asse x

% Variabile da selezionare

% Variabile da inserire sull'asse x
i=  colnamStringFormat(5);
% Variabile da inserire sull'asse y
j=  colnamStringFormat(4);

etichette=false;

plot(X{:,i},X{:,j},'o')
% Titolo sull'asse x
xlabel(X.Properties.VariableNames(i))
% Titolo sull'asse y
ylabel(X.Properties.VariableNames(j))
if etichette == true
    % Aggiungo al grafico le etichette dei punti
    text(X{:,i},X{:,j},rownam)
end
% Aggiungo al grafico il valore del coefficiente di correlazione tra le due
% variabili selezionate
% Calcolo il coefficiente di correlazione
rxy=corrcoef(X{:,i},X{:,j});
% La funzione num2str converte il numero in stringa in modo da poterlo
% concatenare con la frase di testo "Correlazione='
title(['Correlazione=' num2str(rxy(1,2))])




