Applies ToExcel per Microsoft 365

Python in Excel è ora disponibile per gli utenti Enterprise e Business che eseguono Current Channel in Windows, a partire dalla versione 2408 (build 17928.20114) e dal Canale Enterprise mensile in Windows, a partire dalla versione 2408 (build 17928.20216). È disponibile in anteprima per gli utenti di Family e Personal che eseguono Current Channel in Windows a partire dalla versione 2405 (build 17628.20164). Python in Excel è disponibile in anteprima per gli utenti education che eseguono Current Channel (Anteprima) tramite il Programma Microsoft 365 Insider. Non è attualmente disponibile per Semi-Annual Enterprise Channel.

Viene distribuita prima in Excel per Windows e poi in altre piattaforme in un secondo momento. Per altre informazioni sulla disponibilità, vedere Disponibilità di Python in Excel.

Se riscontri problemi con Python in Excel, segnalali selezionando Guida > Feedback in Excel.

Non si ha esperienza con Python in Excel? Iniziare con Introduzione a Python in Excel e Introduzione a Python in Excel.

Usare librerie open-source python per creare plottaggio e grafici 

Python in Excel viene fornito con un set di librerie di Python fornito da Anaconda. Questo articolo descrive come utilizzare librerie Python, come seaborne Matplotlib, per creare plot e grafici. Per altre informazioni sulle librerie open source disponibili con Python in Excel, vedere Librerie open source e Python in Excel

Gli esempi di questo articolo usano il set di dati del fiore Iride. Scaricare questa cartella di lavoro di esempio da seguire insieme all'articolo: python-in-excel-iris-dataset.xlsx

Creare un plottaggio di coppia con seaborn 

Questo esempio mostra come creare una visualizzazione del tracciato di coppia del set di dati del fiore Iride. Un tracciato di coppia è una matrice di plottaggio e grafici che confronta la relazione tra ogni variabile in un set di dati. In questo caso, il set di dati del fiore Iris contiene quattro colonne di dati numerici: sepal_length, sepal_width, petal_length e petal_width

Usare Python in Excel per creare un plottaggio di coppia con la libreria seaborn.

Python in Excel crea la visualizzazione con la libreria seaborn. La libreria seabornviene importata automaticamente per Python in Excel con la seguente istruzione di importazione, consentendo di farvi riferimento con gli alias sns.  

import seaborn as sns 

Per creare un tracciato di coppia del set di dati del fiore Iris con la libreria marinata, eseguire le operazioni seguenti:

  1. Immettere il frammento di codice seguente in una cella di Python in Excel. Il frammento di codice archivia il tracciato di coppia come variabile denominata pairplot.  Crea il tracciato di coppia con le sns della libreria seaborn e l'pairplot della funzione seaborn. pairplot = sns.pairplot(xl("Table1[#All]", headers=True)) Come argomento per la funzione pairplot, il frammento di codice usa la funzione Python personalizzata xl() e fa riferimento alla prima tabella del foglio di lavoro, Table1. Include l'intero contenuto della tabella (come [#All]) e le note che la tabella include una riga di intestazione (come headers=True).It includes the entire table contents (as [#All]) and notes that the table includes a header row (as headers=True). In questo esempio, Table1 nel foglio di lavoro contiene il set di dati Iris.Vedere l'anteprima del tracciato di coppia in un DataFrame.

    Nota: Se si verificano errori, vedere Risolvere i problemi relativi agli errori di Python in Excel per altre informazioni. 

  2. Dopo aver eseguito il commit della formula di Python, Python in Excel restituisce la visualizzazione del tracciato di coppia in un oggetto immagine. Selezionare l'icona della scheda nella cella dell'oggetto immagine per visualizzare un'anteprima della visualizzazione.Visualizzare un'anteprima del tracciato in una scheda DataFrame.

  3. Mantenere la visualizzazione come oggetto Image per continuare a usarla per i calcoli di Python. Estrarre l'immagine nella griglia di Excel per ridimensionarla e visualizzare ogni tracciato in modo più dettagliato. Per estrarre l'immagine nella griglia, fare clic con il pulsante destro del mouse o premere CTRL+clic sulla cella che contiene l'oggetto immagine e scegliere Visualizza traccia sulle celle dal menu.Per altre informazioni sull'estrazione di oggetti immagine, vedere la sezione Estrarre un oggetto immagine nella griglia di Excel in questo articolo.

Creare un tracciato a dispersione con Matplotlib 

Questo esempio descrive come creare un tracciato a dispersione con il set di dati di esempio del fiore Iride. Un tracciato a dispersione mostra la relazione tra due variabili numeriche in un set di dati. Nell'esempio viene creato un tracciato a dispersione simile allo screenshot seguente, che confronta i valori di sepal_width e sepal_length .

Usare Python in Excel per creare un plot a dispersione con la libreria matplotlib.

Python in Excel crea la visualizzazione con la libreria open source Matplotlib. La libreria Matplotlibviene importata automaticamente per Python in Excel con la seguente istruzione di importazione, consentendo di farvi riferimento come plt.  

import matplotlib.pyplot as plt 

Per creare un tracciato a dispersione del set di dati del fiore Iris con la libreria Matplotlib, eseguire le operazioni seguenti:

  1. In una cella python in Excel, utilizzare la funzione di dispersioneMatplotlib e immettere la sepal_length e sepal_width colonne del set di dati Iris come argomenti. In questo esempio, Table1 nel foglio di lavoro contiene il set di dati Iris.plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))

  2. Aggiungere etichette e un titolo al tracciato a dispersione.  # Label the x and y axes of the plot. plt.xlabel('sepal_length') plt.ylabel('sepal_width')   # Add a title to the plot.  plt.title('Sepal length and width analysis')

    Nota: È possibile aggiungere questo frammento di codice come riga di codice aggiuntiva dopo la formula python nel passaggio precedente, nella stessa cella di Excel, oppure è possibile immetterlo in una nuova cella di Python in Excel nella cartella di lavoro. Se si sceglie di immetterla in una nuova cella, assicurarsi di seguire le regole di ordine di calcolo principali della riga e immetterla dopo la prima cella.

  3. Dopo aver eseguito il commit delle formule di Python, Python in Excel restituisce la visualizzazione del tracciato a dispersione come oggetto immagine. Selezionare l'icona della scheda nella cella dell'oggetto immagine per visualizzare un'anteprima della visualizzazione.  Visualizzare un'anteprima del tracciato a dispersione in un dataframe.

    Nota: Se si verificano errori, vedere Risolvere i problemi relativi agli errori di Python in Excel per altre informazioni.  

  4. Mantenere la visualizzazione come oggetto immagine per continuare a usarla per i calcoli di Python. Estrarre l'immagine nella griglia di Excel per ridimensionarla e visualizzare il tracciato in modo più dettagliato. Per estrarre l'immagine nella griglia, fare clic con il pulsante destro del mouse o premere CTRL+clic sulla cella che contiene l'oggetto immagine e scegliere Visualizza traccia sulle celle dal menu.Per altre informazioni sull'estrazione di oggetti immagine, vedere la sezione Estrarre un oggetto immagine nella griglia di Excel in questo articolo.

Estrarre un oggetto immagine nella griglia di Excel

Come illustrato negli esempi di questo articolo, le librerie python come seaborn e Matplotlib possono restituire le visualizzazioni dei dati alle celle di Excel. Per impostazione predefinita, Python in Excel restituisce queste visualizzazioni come oggetti immagine. 

Selezionare l'icona della scheda in una cella oggetto immagine per visualizzare un'anteprima della visualizzazione.

Visualizzare un'anteprima del tracciato in una scheda DataFrame.

Esistono due modi per estrarre un'immagine nella griglia di Excel: visualizzare l'immagine come tracciato sulle celle o visualizzare l'immagine all'interno di una cella.

Visualizzare l'immagine sulle celle

Seguire questa procedura per visualizzare l'immagine come tracciato sulle celle.

  1. Fare clic con il pulsante destro del mouse o premere CTRL+clic sulla cella contenente l'oggetto immagine e scegliere Visualizza traccia sulle celle dal menu di scelta rapida oppure usare la scelta rapida da tastiera CTRL+ALT+MAIUSC+C. In questo modo viene creata una copia dell'immagine che si sposta sulla griglia di Excel e può essere ridimensionata facilmente. L'oggetto immagine originale rimane nella cella originale.

  2. Selezionare e trascinare l'immagine del tracciato per spostarla nel foglio di lavoro. Selezionare e trascinare i nodi agli angoli e ai lati dell'immagine per ridimensionarla.Creare una visualizzazione di plottaggio mobile con l'icona Crea riferimento.

Visualizzare l'immagine all'interno di una cella

Seguire questa procedura per visualizzare l'immagine all'interno di una cella.

  1. Restituire l'oggetto immagine come valore di Excel. Selezionare la cella dell'oggetto immagine, passare al menu di output python nella barra della formula e selezionare Valore di Excel.   Utilizza il menu di output python accanto alla barra della formula per modificare il tipo di output. L'immagine del tracciato viene ora visualizzata all'interno della cella.

    Suggerimento: Per alternare i risultati della formula di Python tra gli oggetti Python e i valori di Excel, usa la scelta rapida da tastiera CTRL+ALT+MAIUSC+M. Per altre informazioni sulle scelte rapide da tastiera, vedere Scelte rapide da tastiera di Python in Excel.

  2. Le dimensioni dell'immagine del tracciato dipendono dalle dimensioni della cella. Aumentare le dimensioni dell'immagine aumentando le dimensioni della cella o unendo le celle.

Usare tipi di carattere diversi per le lingue diverse dall'inglese 

Per creare un grafico con caratteri dell'alfabeto non latino, ad esempio cinese, coreano o thai, usare excel.FontPath. Per impostazione predefinita, Python in Excel esegue il rendering dei caratteri dell'alfabeto non latino come quadrato vuoto ('□'). Per risolvere questo problema, excel.FontPath consente di utilizzare il modulo excel per chiamare un tipo di carattere diverso ed eseguire il rendering dei caratteri.

Sono disponibili i tipi di carattere seguenti. L'attributo viene aggiunto a excel.FontPath nel codice python. Il percorso fa riferimento al file del tipo di carattere chiamato dall'attributo.

Attributo

Percorso

BENGALI

/usr/share/fonts/Vrinda.ttf

CHINESE_SIMPLIFIED

/usr/share/fonts/SimSun.ttf

CHINESE_TRADITIONAL

/usr/share/fonts/MingLiU.ttf

HINDI

/usr/share/fonts/Mangal.ttf

GIAPPONESE

/usr/share/fonts/Meiryo.ttf

COREANO

/usr/share/fonts/Batang.ttf

TAILANDESE

/usr/share/fonts/THSarabunPSK.ttf

Usare Excel. FontPath per visualizzare le etichette del tracciato per il cinese semplificato

Lo screenshot seguente mostra un grafico con etichette del tracciato in caratteri cinesi semplificati usando excel.FontPath. L'esempio di codice dopo lo screenshot mostra come usare excel.FontPath.CHINESE_SIMPLIFIED per visualizzare i caratteri della libreria per il cinese semplificato.

Chart with characters rendering properly

Esempio di codice con Excel. FontPath

Questo esempio di codice mostra come usare excel.FontPath.CHINESE_SIMPLIFIED per generare il tracciato e i caratteri cinesi semplificati nelle etichette del tracciato visualizzate nello screenshot precedente. 

  • import matplotlib.pyplot as plt
    from matplotlib.font_manager import FontProperties
    
    # Set the font path. This returns '/usr/share/fonts/simsun.ttf'.
    font_path = excel.FontPath.CHINESE_SIMPLIFIED
    
    # Point the properties to the font path.
    font_properties = FontProperties(fname=font_path)
    plt.rcParams['font.family'] = font_properties.get_name()
    
    # Make the plot.
    myplot = pd.DataFrame({'欧文': [1,2,3], '比尔': [1,2,3]}).plot(x='欧文')
    
    # Show the plot.
    plt.show()

Articoli correlati 

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.