5 потрясающих операций Matplotlib от Amway!

визуализация данных

Публичный номер: наука о данных Python

Автор: Брат взлетай

Как мы все знаем, Matplotlib — это библиотека визуализации для Python, которая очень мощная и может рисовать различные графики. Некоторые распространенные способы использования совместно использовали шпаргалку, официально выпущенную Matplotlib не так давно:Официальная шпаргалка по Matplotlib открыта, а вспомогательный код визуализации упакован!

но! Сегодня мы не пойдем привычным путем, а поделимся с вами несколькими ворами.

1. Span Selector

Span SelectorдаMatplotlibвиджет мыши в ,widgets— это объект Python, используемый для некоторых интерактивных функций.Span SelectorМаксимальные и минимальные значения выделенной области можно легко просмотреть, сделав выделение кадра мышью.

Ниже приведен код, сначала создающий базовую линейную диаграмму в качестве примера. Затем мы звонимSpanSelectorметод и использовать его для выбора области, а затем отображать максимальное и минимальное значения в этой области.

import matplotlib.pyplot as plt
from matplotlib.widgets import SpanSelector
def onselect(xmin, xmax):
    print(xmin, xmax)
    return xmin, xmax
fig, ax = plt.subplots()
ax.plot([1,2,3,4,5,6,7], [10, 50, 100, 23,15,28,45])
span = SpanSelector(ax, onselect, 'horizontal', useblit=True, rectprops=dict(alpha=0.5, facecolor='red'))       
plt.show()

Ниже приводится конкретная операция.

2. Broken Barh

BrokenГоризонтальная гистограмма — это прерывистый график с промежутками, который можно использовать, когда значения данных сильно различаются, например, набор данных, содержащий экстремальные диапазоны температур. В этом случае хорошо подходят горизонтальные гистограммы Broken, поскольку они могут отображать как максимальные, так и минимальные диапазоны.

модуль питонаmatplotlib.broken_barh()Горизонтальная гистограмма для построения Broken.

import matplotlib.pyplot as plt 
#Defining the x and y ranges 
xranges = [(5,5), (20,5),(20,7)] 
yrange = (2,1) 
#Plotting the broken bar chart 
plt.broken_barh(xranges, yrange, facecolors='green') 
xranges = [(6,2), (17,5),(50,2)] 
yrange = (15,1) 
plt.broken_barh(xranges, yrange, facecolors='orange') 
xranges = [(5,2), (28,5),(40,2)] 
yrange = (30,1) 
plt.broken_barh(xranges, yrange, facecolors='red') 
plt.xlabel('Sales') 
plt.ylabel('Days of the Month') 
plt.show()

3. Table Demo

MatplotlibТабличная функция также может отображать таблицу на рисунке. Это особенно удобно, когда мы хотим быстро увидеть значения в таблице в виде гистограммы. Таблицы можно размещать вверху, внизу или сбоку диаграммы.

import pandas as pd 
import numpy as np 
import matplotlib.pyplot as plt 
x = np.random.rand(5, 8)*.7 
plt.plot(x.mean(axis=0), '-o', label='average per column') 
plt.xticks([]) 
plt.table(cellText=[['%1.2f' % xxx for xxx in xx] for xx in x],cellColours=plt.cm.GnBu(x),loc='bottom') 
plt.show()

4. Watermark Images

Иногда нам кажется, что фон визуализации слишком однообразен, и мы хотим добавить немного интереса, например, наложение изображений, связанных с данными, в качестве водяных знаков на визуализацию. Давайте возьмем императора НБА Джеймса в качестве примера, чтобы проверить воду, и, наконец, покажем данные императора Чжаня, а фоном является сам император Чжан.

Сначала импортируйте наборы данных, изображения и необходимые библиотеки, которые будут использоваться.pandas.

import numpy as np 
import matplotlib.image as image 
import matplotlib.pyplot as plt 
import pandas as pd 
df = pd.read_csv('income.csv') 
im = image.imread('Lebron_James.jpeg') # Image

использоватьpandasОтфильтруйте данные, которые состоят только из Леброна.

lebron_james = df[df['Name']=='LeBron James']

Затем сделайте это так, используяfigimageДобавление водяного знака — это нормально.

fig, ax = plt.subplots() 
ax.grid() 
ax.plot('Year','earnings ($ million)',data=lebron_james) 
ax.set_title("LeBron James earnings in US$(millions)") 
fig.figimage(im, 60, 40,cmap='ocean', alpha=.2) 
plt.show()

5. XKCD Plots

Следующая операция более интересна (более кокетлива).

если ты хочешьMatplotlibЧтобы добавить изюминку в график, можно простоxkcd()существуетpyplotМетод вызывается для объекта, как показано ниже.

import pandas as pd 
import matplotlib.pyplot as plt 
df = pd.read_csv('https://raw.githubusercontent.com/parulnith/Website-articles-datasets/master/India%20GDP%20Growth%20Rate%20.csv', parse_dates=['Year']) 
df['Year'] = df['Year'].apply(lambda x: pd.Timestamp(x).strftime('%Y')) 
#calling xkcd() method 
plt.xkcd(scale=5, length=400) 
df.plot(x='Year',y='GDP Growth (%)',kind='bar') 
plt.ylabel('GDP Growth (%)') 
plt.xticks(rotation=-20) 
plt.figure(figsize=(10,8)) 
plt.show()

Ссылка на статью:

к data science.com/advanced-reviews…

Сначала поделитесь этим, если вы найдете это полезным, пожалуйста, поделитесь и лайкните больше.

Приглашаю всех обратить внимание на мой оригинальный публичный аккаунт WeChat.PythonНаука о данных, сосредоточив внимание на написании алгоритмов данных на основе Python, машинном обучении и глубоком изучении сложных галантерейных товаров.