​​​​​​​Python v Excelu se v současné době zavádí pro podnikové a podnikové uživatele, kteří používají Aktuální kanál ve Windows, počínaje verzí 2407 (build 17830.20128). Je k dispozici ve verzi Preview pro rodinné a osobní uživatele, kteří používají aktuální kanál ve Windows od verze 2405 (build 17628.20164). Python v Excelu je k dispozici ve verzi Preview pro uživatele vzdělávání, kteří používají aktuální kanál (Preview) prostřednictvím programu Microsoft 365 Insider. ​​​​​​​

Nejprve se zavádí v Excelu pro Windows a později i na dalších platformách. Další informace o dostupnosti najdete v tématu Dostupnost Pythonu v Excelu.

Pokud narazíte na nějaké obavy týkající se Pythonu v Excelu, nahlaste je výběrem možnosti Nápověda > Váš názor v Excelu.

Začínáte s Pythonem v Excelu? Začněte úvodem do Pythonu v Excelu a Začínáme s Pythonem v Excelu.

Použití opensourcových knihoven Pythonu k vytváření grafů a grafů 

Python v Excelu obsahuje základní sadu knihoven Pythonu, které poskytuje Anaconda. Tento článek popisuje, jak používat knihovny Pythonu, jako je seaborna matplotlib, k vytváření grafů a grafů. Další informace o opensourcových knihovnách dostupných s Pythonem v Excelu najdete v tématu Opensourcové knihovny a Python v Excelu

Příklady v tomto článku používají datovou sadu Iris flower. Stáhněte si tento ukázkový sešit a postupujte podle článku: python-in-excel-iris-dataset.xlsx

Vytvoření párového grafu pomocí seabornu 

Tento příklad ukazuje, jak vytvořit vizualizaci párového grafu sady dat Iris flower. Párový graf je matice grafů a grafů, která porovnává vztah mezi jednotlivými proměnnými v sadě dat. V tomto případě datová sada Iris flower obsahuje čtyři sloupce číselných dat: sepal_length, sepal_width, petal_length a petal_width

Pomocí Pythonu v Excelu můžete vytvořit párový graf s knihovnou seaborn.

Python v Excelu vytvoří vizualizaci pomocí knihovny seaborn. Knihovna seabornse automaticky importuje pro Python v Excelu pomocí následujícího příkazu import, který vám umožní odkazovat na ni pomocí aliasů sns.  

import seaborn as sns 

Pokud chcete vytvořit párový graf sady dat Iris flower s knihovnou seaborn, proveďte následující kroky:

  1. Do buňky Pythonu v Excelu zadejte následující fragment kódu. Fragment kódu ukládá graf páru jako proměnnou s názvem pairplot.  Vytvoří párový graf s aliasem knihovny seaborn sns a seaborn function pairplotpairplot = sns.pairplot(xl("Table1[#All]", headers=True)) Jako argument pro funkci pairplot používá fragment kódu vlastní funkci Pythonu xl() a odkazuje na první tabulku v listu Table1. Obsahuje celý obsah tabulky (jako [#All]) a zaznamenává, že tabulka obsahuje řádek záhlaví (jako headers=True). V tomto příkladu tabulka1 na listu obsahuje datovou sadu Iris.Podívejte se na náhled párového grafu v datovém rámci.

    Poznámka: Pokud narazíte na nějaké chyby, další informace najdete v tématu Řešení potíží s chybami Pythonu v Excelu

  2. Po potvrzení vzorce Pythonu vrátí Python v Excelu vizualizaci párového grafu v objektu obrázku. Výběrem ikony karty v buňce objektu obrázku zobrazíte náhled vizualizace.Podívejte se na náhled grafu na kartě datového rámce.

  3. Ponechejte vizualizaci jako objekt Image, abyste ji mohli dál používat pro výpočty v Pythonu. Extrahujte obrázek do excelové mřížky, změňte jeho velikost a prohlédněte si jednotlivé grafy podrobněji. Pokud chcete extrahovat obrázek do mřížky, klikněte pravým tlačítkem nebo stiskněte Klávesu Ctrl a klikněte na buňku, která obsahuje objekt obrázku, a v nabídce vyberte Zobrazit vykreslení nad buňkami.Další informace o extrahování objektů obrázků najdete v článku Extrakce objektu obrázku do mřížky aplikace Excel v tomto článku.

Vytvoření bodového grafu pomocí knihovny Matplotlib 

Tento příklad popisuje, jak vytvořit bodový graf s ukázkovou sadou dat květu Iris. Bodový graf znázorňuje vztah mezi dvěma číselnými proměnnými v sadě dat. Příklad vytvoří bodový graf, který vypadá jako na následujícím snímku obrazovky a porovná hodnoty sepal_width a sepal_length .

Pomocí Pythonu v Excelu vytvořte bodový graf s knihovnou matplotlib.

Python v Excelu vytvoří vizualizaci pomocí opensourcové knihovny Matplotlib. Knihovna Matplotlibse automaticky importuje pro Python v Excelu pomocí následujícího příkazu importu, který vám umožní odkazovat na ni jako plt.  

import matplotlib.pyplot as plt 

Pokud chcete vytvořit bodový graf sady dat Iris flower pomocí knihovny Matplotlib, proveďte následující kroky:

  1. V buňce Pythonu v Excelu použijte bodovoufunkci matplotlib a jako argumenty zadejte sepal_length a sepal_width sloupce sady dat Iris. V tomto příkladu tabulka1 na listu obsahuje datovou sadu Iris.plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))

  2. Přidejte do bodového grafu popisky a název.  # 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')

    Poznámka: Tento fragment kódu můžete přidat jako další řádek kódu za vzorec Pythonu v předchozím kroku do stejné buňky Excelu nebo ho můžete zadat do nové buňky Pythonu v excelové buňce v sešitu. Pokud se ho rozhodnete zadat do nové buňky, nezapomeňte postupovat podle pravidel pořadí výpočtů hlavního řádku a zadat je za první buňku.

  3. Po potvrzení vzorců Pythonu vrátí Python v Excelu vizualizaci bodového grafu jako objekt obrázku. Výběrem ikony karty v buňce objektu obrázku zobrazíte náhled vizualizace.  Zobrazení náhledu bodového grafu v datovém rámci

    Poznámka: Pokud narazíte na nějaké chyby, další informace najdete v tématu Řešení potíží s chybami Pythonu v Excelu .  

  4. Nechte vizualizaci jako objekt obrázku, abyste ji mohli dál používat pro výpočty v Pythonu. Extrahujte obrázek do excelové mřížky, změňte jeho velikost a zobrazte graf podrobněji. Pokud chcete extrahovat obrázek do mřížky, klikněte pravým tlačítkem nebo stiskněte Klávesu Ctrl a klikněte na buňku, která obsahuje objekt obrázku, a v nabídce vyberte Zobrazit vykreslení nad buňkami.Další informace o extrahování objektů obrázků najdete v článku Extrakce objektu obrázku do mřížky aplikace Excel v tomto článku.

Extrahování objektu obrázku do excelové mřížky

Jak ukazují příklady v tomto článku, knihovny Pythonu, jako je seaborn a Matplotlib, můžou vracet vizualizace dat do excelových buněk. Python v Excelu ve výchozím nastavení vrací tyto vizualizace jako objekty obrázků. 

Výběrem ikony karty v buňce objektu obrázku zobrazíte náhled vizualizace.

Podívejte se na náhled grafu na kartě datového rámce.

Existují dva způsoby extrakce obrázku do excelové mřížky: zobrazení obrázku jako grafu nad buňkami nebo zobrazení obrázku v buňce.

Zobrazení obrázku nad buňkami

Pokud chcete obrázek zobrazit jako graf nad buňkami, postupujte podle těchto kroků.

  1. Klikněte pravým tlačítkem na buňku obsahující objekt obrázku nebo na ni klikněte ctrl a v nabídce vyberte Zobrazit obrázek nad buňkami (nebo použijte klávesovou zkratku Ctrl+Alt+Shift+C). Tím se vytvoří kopie obrázku, která se vznáší nad mřížkou Excelu a dá se snadno změnit její velikost. Původní objekt obrázku zůstane v původní buňce.

  2. Vyberte a přetáhněte obrázek grafu, abyste ho mohli přesouvat po listu. Výběrem a přetažením uzlů v rozích a stranách obrázku změňte jeho velikost.Vytvořte vizualizaci plovoucího grafu pomocí ikony Vytvořit odkaz.

Zobrazení obrázku v buňce

Pokud chcete obrázek zobrazit v buňce, postupujte takto.

  1. Vrátí objekt obrázku jako excelovou hodnotu. Vyberte buňku objektu obrázku, v řádku vzorců přejděte do nabídky výstupu Pythonu a vyberte Excel Hodnota.   Pomocí nabídky výstupu Pythonu vedle řádku vzorců změňte typ výstupu. Obrázek grafu se teď zobrazí v buňce.

    Tip: Pokud chcete přepínat výsledky vzorců v Pythonu mezi objekty Pythonu a excelovými hodnotami, použijte klávesovou zkratku Ctrl+Alt+Shift+M. Další informace o klávesových zkratkách najdete v tématu Klávesové zkratky Pythonu v Excelu.

  2. Velikost obrázku grafu závisí na velikosti buňky. Zvětšením velikosti obrázku zvětšete velikost buňky nebo sloučením buněk.

Vytváření vlastních grafů a grafů 

Teď, když jste se naučili vytvářet grafy a grafy Pythonu v Excelu s ukázkovou sadou dat, můžete zadat vlastní data do excelového sešitu a vytvořit vlastní vizualizace.  

Pokud chcete importovat externí data pro použití s Pythonem v Excelu, použijte Power Query. Další informace najdete v tématu Import dat pro Python v Excelu pomocí Power Query.

Použití různých písem pro neanglické jazyky 

Pokud chcete zobrazit data, která používají znaky jiné než latinky, například čínštinu, korejštinu nebo thajštinu, použijte excel.FontPath. Python v Excelu ve výchozím nastavení vykresluje znaky jiné než latinky jako prázdný čtvereček ("□"). Pokud chcete tento problém vyřešit, excel.FontPath umožňuje použít modul excel k volání jiného písma a vykreslení znaků.

K dispozici jsou následující písma. Atribut se připojí k excel.FontPath v kódu Pythonu. Cesta odkazuje na soubor písma s názvem atributu .

Atribut

Cesta

BENGÁLŠTINA

/usr/share/fonts/Vrinda.ttf

CHINESE_SIMPLIFIED

/usr/share/fonts/SimSun.ttf

CHINESE_TRADITIONAL

/usr/share/fonts/MingLiU.ttf

HINDŠTINA

/usr/share/fonts/Mangal.ttf

JAPONŠTINA

/usr/share/fonts/Meiryo.ttf

KOREJŠTINA

/usr/share/fonts/Batang.ttf

THAJŠTINA

/usr/share/fonts/THSarabunPSK.ttf

vynikat. FontPath – příklad

Před

Tento graf nemůže vykreslit správné popisky vykreslení, protože výchozí písmo nepodporuje zadané znaky.

Graf se znaky, které se nevykreslují

Ukázka kódu pro nesprávně vykreslené popisky grafu: 

import matplotlib.pyplot as plt

# Make the plot.

myplot = pd.DataFrame({'欧文': [1,2,3], '比尔': [1,2,3]}).plot(x='欧文')

# Show the plot.

plt.show()

Za

Pokud chcete opravit popisky grafu v tomto příkladu, použijte excel.FontPath.CHINESE_SIMPLIFIED , abyste správně vykreslili zadané čínské znaky. 

Graf se správně vykreslenými znaky

Ukázka kódu pro správně vykreslené popisky grafu: 

import matplotlib.pyplot as plt

from matplotlib.font_manager import FontProperties

# Set the font path.

#   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()

Související články 

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.