Исследование красочных фреймов данных с помощью Streamlit: руководство по визуализации данных на Python

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

Метод 1: выделение ячеек на основе значений
Одним из распространенных методов является выделение определенных ячеек в кадре данных на основе их значений. Допустим, у нас есть фрейм данных с именем df:

import streamlit as st
import pandas as pd
df = pd.read_csv('data.csv')
# Define a function to apply color formatting
def highlight_cells(val):
    color = 'red' if val < 0 else 'green'
    return f'background-color: {color}'
# Apply the formatting to the dataframe
styled_df = df.style.applymap(highlight_cells)
# Display the styled dataframe
st.dataframe(styled_df)

.

В этом примере мы определяем функцию highlight_cellsдля определения цвета фона каждой ячейки на основе ее значения. Отрицательные значения выделены красным, а положительные — зеленым. Функция applymapиспользуется для применения этого форматирования к каждой ячейке в кадре данных. Наконец, мы отображаем стилизованный фрейм данных, используя st.dataframe.

Метод 2: раскраска целых строк
Иногда бывает полезно раскрасить целые строки в зависимости от определенных условий. Streamlit позволяет нам легко добиться этого. Вот пример:

import streamlit as st
import pandas as pd
df = pd.read_csv('data.csv')
# Define a function to apply color formatting to rows
def highlight_rows(row):
    if row['Sales'] > 100000:
        return ['background-color: yellow'] * len(row)
    elif row['Profit'] < 0:
        return ['background-color: red'] * len(row)
    else:
        return ['background-color: white'] * len(row)
# Apply the formatting to the dataframe
styled_df = df.style.apply(highlight_rows, axis=1)
# Display the styled dataframe
st.dataframe(styled_df)

В этом примере мы определяем функцию highlight_rowsдля определения цвета фона каждой строки на основе определенных условий. Строки с объемом продаж более 100 000 выделены желтым цветом, а строки с отрицательной прибылью — красным.

Метод 3: Цветовые шкалы для непрерывных данных
При работе с числовыми данными может быть полезно применить цветовые шкалы для визуализации величины значений. Streamlit предоставляет удобный способ добиться этого. Вот пример:

import streamlit as st
import pandas as pd
df = pd.read_csv('data.csv')
# Apply color scales to numeric columns
styled_df = df.style.background_gradient(cmap='viridis')
# Display the styled dataframe
st.dataframe(styled_df)

В этом примере мы используем функцию background_gradient, чтобы применить цветовую шкалу к числовым столбцам в кадре данных. Параметр cmapуказывает используемую цветовую карту (в данном случае «viridis»). Полученная визуализация дает быстрый обзор относительных величин значений.

В этой статье мы рассмотрели различные методы визуализации кадров данных с помощью цветов с помощью Streamlit. Мы рассмотрели методы выделения ячеек на основе значений, окраски целых строк в зависимости от условий и применения цветовых шкал для непрерывных данных. Используя простоту и интерактивность Streamlit, мы можем создавать визуально привлекательные и информативные визуализации. Так что экспериментируйте с этими методами и оживляйте свои данные с помощью цветов!