Има и опция за запазване на графичен дизайн офлайн, за да могат лесно да се експортират. Има много други функции, които улесняват използването на библиотеката:
- Запазете графики за офлайн използване като векторни графики, които са силно оптимизирани за печат и публикации
- Изнесените диаграми са във формат JSON, а не във формат на изображение. Този JSON може да се зареди в други инструменти за визуализация като Tableau лесно или да се манипулира с Python или R
- Тъй като експортираните графики имат JSON характер, практически е много лесно да се вградят тези диаграми в уеб приложение
- Plotly е добра алтернатива за Matplotlib за визуализация
За да започнем да използваме пакета Plotly, трябва да се регистрираме за акаунт на споменатия по-рано уебсайт, за да получим валидно потребителско име и API ключ, с които да започнем да използваме неговите функционалности. За щастие за Plotly се предлага план за безплатно ценообразуване, с който получаваме достатъчно функции, за да направим производствени класации.
Инсталиране Plotly
Само бележка преди започване, можете да използвате виртуална среда за този урок, която можем да направим със следната команда:
python -m virtualenv интригуващоизточник numpy / bin / активиране
След като виртуалната среда е активна, можете да инсталирате библиотека Plotly във виртуалната среда, за да могат да се изпълняват примери, които създаваме след това:
pip инсталирайте интелигентноВ този урок ще използваме Анаконда и Юпитер. Ако искате да го инсталирате на вашата машина, погледнете урока, който описва „Как да инсталирате Anaconda Python на Ubuntu 18.04 LTS ”и споделете вашите отзиви, ако се сблъскате с някакви проблеми. За да инсталирате Plotly с Anaconda, използвайте следната команда в терминала от Anaconda:
conda install -c сюжетно грациозноВиждаме нещо подобно, когато изпълняваме горната команда:
След като всички необходими пакети са инсталирани и готови, можем да започнем с използването на библиотеката Plotly със следния оператор за импортиране:
импортирайте интригуващоСлед като направите акаунт в Plotly, ще ви трябват две неща - потребителско име на акаунта и API ключ. Към всеки акаунт може да има само един API ключ. Затова го пазете някъде на сигурно място, сякаш го загубите, ще трябва да регенерирате ключа и всички стари приложения, използващи стария ключ, ще спрат да работят.
Във всички програми на Python, които пишете, споменете идентификационните данни, както следва, за да започнете да работите с Plotly:
сюжетно.инструменти.set_credentials_file (username = 'потребителско име', api_key = 'your-api-key')Нека започнем с тази библиотека сега.
Първи стъпки с Plotly
Ще използваме следния внос в нашата програма:
импортирайте панди като pdимпортиране на numpy като np
внос scipy като sp
импортирайте интригуващо.сюжетно като py
Използваме:
- Pandas за ефективно четене на CSV файлове
- NumPy за прости таблични операции
- Scipy за научни изчисления
- Парцел за визуализация
За някои от примерите ще използваме собствените набори от данни на Plotly, налични в Github. И накрая, моля, обърнете внимание, че можете да активирате офлайн режим и за Plotly, когато трябва да стартирате Plotly скриптове без мрежова връзка:
импортирайте панди като pdимпортиране на numpy като np
внос scipy като sp
импортирайте интригуващо
сюжетно.извън линия.init_notebook_mode (свързан = Вярно)
импортирайте интригуващо.офлайн като py
Можете да изпълните следното изявление, за да тествате инсталацията Plotly:
печат (сюжетно.__version__)Виждаме нещо подобно, когато изпълняваме горната команда:
Накрая ще изтеглим набора от данни с Pandas и ще го визуализираме като таблица:
импортирайте интригуващо.фигура_фабрика като ffdf = pd.read_csv ("https: // raw.githubuserсъдържание.com / plotly / datasets / master / school_
доходи.csv ")
таблица = ff.create_table (df)
py.iplot (таблица, име на файл = 'таблица')
Виждаме нещо подобно, когато изпълняваме горната команда:
Сега нека конструираме a Стълбовидна диаграма за да визуализирате данните:
импортирайте интригуващо.graph_objs като goданни = [go.Лента (x = df.Училище, y = df.Жени)]
py.iplot (данни, име на файл = 'жени-бар')
Виждаме нещо подобно, когато изпълняваме горния кодов фрагмент:
Когато видите диаграмата по-горе с тетрадка Jupyter, ще ви бъдат представени различни опции за увеличаване / намаляване на мащаба над определен раздел от диаграмата, избор на Box & Lasso и много други.
Групирани диаграми
Многобройни диаграми могат да бъдат групирани заедно за сравнение много лесно с Plotly. Нека използваме един и същ набор от данни за това и да покажем вариации на присъствието на мъже и жени в университетите:
жени = отидете.Лента (x = df.Училище, y = df.Жени)мъже = върви.Лента (x = df.Училище, y = df.Мъже)
данни = [мъже, жени]
оформление = върви.Оформление (barmode = "group")
фиг = отивам.Фигура (данни = данни, оформление = оформление)
py.iplot (фиг.)
Виждаме нещо подобно, когато изпълняваме горния кодов фрагмент:
Въпреки че това изглежда добре, етикетите в горния десен ъгъл не са, верно! Нека ги коригираме:
жени = отидете.Лента (x = df.Училище, y = df.Жени, име = "Жени")мъже = върви.Лента (x = df.Училище, y = df.Мъже, име = "Мъже")
Графиката изглежда много по-описателна сега:
Нека се опитаме да променим barmode:
оформление = върви.Оформление (barmode = "относително")фиг = отивам.Фигура (данни = данни, оформление = оформление)
py.iplot (фиг.)
Виждаме нещо подобно, когато изпълняваме горния кодов фрагмент:
Кръгови диаграми с Plotly
Сега ще се опитаме да изградим кръгова диаграма с Plotly, която установява основна разлика между процента на жените във всички университети. Имената на университетите ще бъдат етикетите и реалните числа ще се използват за изчисляване на процента от цялото. Ето кодовия фрагмент за същото:
trace = go.Пай (етикети = df.Училище, ценности = df.Жени)py.iplot ([проследяване], име на файл = 'пай')
Виждаме нещо подобно, когато изпълняваме горния кодов фрагмент:
Хубавото е, че Plotly идва с много функции за увеличаване и намаляване и много други инструменти за взаимодействие с изградената диаграма.
Визуализация на данни от времеви редове с Plotly
Визуализирането на данни от времеви редове е една от най-важните задачи, с която се сблъсквате, когато сте анализатор на данни или инженер на данни.
В този пример ще използваме отделен набор от данни в едно и също хранилище на GitHub, тъй като по-ранните данни не са включвали конкретно маркирани във времето данни. Както тук, ние ще начертаем вариация на пазарния запас на Apple във времето:
финансови = pd.read_csv ("https: // raw.githubuserсъдържание.com / plotly / datasets / master /финансови диаграми-ябълка.csv ")
данни = [go.Скатер (x = финансов.Дата, y = финансова ['AAPL.Близо'])]
py.iplot (данни)
Виждаме нещо подобно, когато изпълняваме горния кодов фрагмент:
След като задържите курсора на мишката върху линията на вариация на графиката, можете да посочите подробности за точката:
Можем да използваме бутони за увеличаване и намаляване, за да видим и данни, специфични за всяка седмица.
OHLC диаграма
Диаграма OHLC (Open High Low close) се използва, за да покаже вариация на обект в рамките на период от време. Това е лесно да се конструира с PyPlot:
от datetime импортиране datetimeотворени_данни = [33.0, 35.3, 33.5, 33.0, 34.1]
високи_данни = [33.1, 36.3, 33.6, 33.2, 34.8]
ниски данни = [32.7, 32.7, 32.8, 32.6, 32.8]
close_data = [33.0, 32.9, 33.3, 33.1, 33.1]
дати = [дата и час (година = 2013, месец = 10, ден = 10),
дата и час (година = 2013, месец = 11, ден = 10),
дата и час (година = 2013, месец = 12, ден = 10),
дата и час (година = 2014, месец = 1, ден = 10),
дата и час (година = 2014, месец = 2, ден = 10)]
trace = go.Ohlc (x = дати,
отворено = отворени данни,
висока = висока_данни,
ниска = ниска_данни,
close = close_data)
данни = [проследяване]
py.iplot (данни)
Тук сме предоставили някои примерни точки от данни, които могат да бъдат изведени както следва:
- Отворените данни описват лихвения процент при отваряне на пазара
- Високите данни описват най-високия процент на запасите, постигнат през даден период от време
- Ниските данни описват най-ниския процент на запасите, постигнат през даден период от време
- Данните за затваряне описват лихвения процент на приключване, когато даден интервал от време приключи
Сега нека пуснем кодовия фрагмент, който предоставихме по-горе. Виждаме нещо подобно, когато изпълняваме горния кодов фрагмент:
Това е отлично сравнение на това как да се установят времеви сравнения на даден обект със собственото му и да се сравнява с неговите високи и ниски постижения.
Заключение
В този урок разгледахме друга библиотека за визуализация, Plotly, която е отлична алтернатива на Matplotlib в производствени приложения, които са изложени като уеб приложения, Plotly е много динамична и богата на функции библиотека за използване за производствени цели, така че това определено е умение, което трябва да имаме под колана си.
Намерете целия изходен код, използван в този урок на Github. Моля, споделете отзивите си за урока в Twitter с @sbmaggarwal и @LinuxHint.