English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Визуализация Pandas

    Пример визуализации Pandas

Основные визуализации: рисование

Эта функция вокруг matplotlib библиотеки plot() является простым оберткой.

 import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.randn(10, 4), index=pd.date_range('1/1/2000',
    periods=10), columns=list('ABCD'))
 df.plot()

Результат выполнения будет следующим:

Если индекс состоит из дат, он вызовет gct().autofmt_xdate() для форматирования оси x, как показано на上图.
Мы можем нарисовать отношение одной строки к другой с помощью ключевых слов x и y.

Кроме стандартной линии, методы рисования также позволяют использовать различные стили рисования. Эти методы можно предоставить в качестве ключевого слова kind параметра plot(). Это включает в себя:

Столбчатый график Гистограмма Гистограмма箱ок Diagramма площади Диаграмма точек Диаграмма секторов

Столбчатый график

Давайте посмотрим, как создать столбчатый график:

 import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.bar()

Результат выполнения будет следующим:

Производит наложенные столбчатые графики, можно установить stacked=True

import pandas as pd
 df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.bar(stacked=True)

Результат выполнения будет следующим:

Чтобы получить горизонтальную гистограмму, можно использовать метод barh:

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.barh(stacked=True)

Результат выполнения будет следующим:

Гистограмма

Гистограмму можно нарисовать с помощью метода plot.hist(). Мы можем指定 количество.

import pandas as pd
 import numpy as np
 df = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000), 'c':
 np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])
 df.plot.hist(bins=20)

Результат выполнения будет следующим:

Следующий код позволяет нарисовать различные гистограммы для каждого столбца:

import pandas as pd
 import numpy as np
 df = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000), 'c':
 np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])
 df.diff.hist(bins=20)

Результат выполнения будет следующим:

Гистограмма箱ок

Boxplot можно нарисовать, вызывая Series.box.plot() и DataFrame.box.plot() или DataFrame.boxplot(), чтобы визуализировать распределение значений в каждой строке.
Например, это гистограмма箱ок, представляющая 10 наблюдений случайной переменной в интервале [0,1) по пяти экспериментам.

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])
 df.plot.box()

Результат выполнения будет следующим:

Diagramма площади

Можете использовать метод Series.plot.area() или DataFrame.plot.area() для создания diagrams площади.

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.area()

Результат выполнения будет следующим:

Диаграмма точек

Создание диаграммы точек можно выполнить с помощью метода DataFrame.plot.scatter().

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.scatter(x='a', y='b')

Результат выполнения будет следующим:

Диаграмма секторов

Создание диаграммы секторов можно выполнить с помощью метода DataFrame.plot.pie().

import pandas as pd
 import numpy as np
 df = pd.DataFrame(3 * np.random.rand(4), index=['a', 'b', 'c', 'd'], columns=['x'])
 df.plot.pie(subplots=True)

Результат выполнения будет следующим: