Código fonte de visual_edu

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from scipy.stats import norm


[documentos] def graf_pizza(df : pd.DataFrame, coluna : str, titulo : str): """ Toma uma coluna do df escolhido, cria e plota um gráfico em pizza com os dados Parâmetros ---------- df : pd.DataFrame coluna : str Coluna que será retirado os dados para fazer o gráfico em pizza Retorna ------- None. """ try: if coluna not in df.columns: raise KeyError(f"A coluna '{coluna}' não foi encontrada no DataFrame dado.") values = df[coluna].value_counts() plt.figure(figsize=(8, 8)) plt.pie(values, labels=values.index, autopct='%1.1f%%', startangle=140) plt.title(titulo) plt.show() except Exception as e: print(f"Erro: {str(e)}")
[documentos] def graf_hist_desvpad(df : pd.DataFrame, coluna : str, titulo : str): """ Toma uma coluna do df escolhido, cria e plota um histograma com a curva de distribuição normal Parâmetros ---------- df : pd.DataFrame coluna : str Coluna que será retirado os dados para fazer o histograma e a curva de distribuição normal Retorna ------- None. """ try: # Verifica se a coluna especificada está presente no DataFrame if coluna not in df.columns: raise KeyError(f"A coluna '{coluna}' não foi encontrada no DataFrame dado.") data = df[coluna] mean, std = data.mean(), data.std() plt.hist(data, bins=20, density=True, alpha=0.6, color='g') xmin, xmax = plt.xlim() x = np.linspace(xmin, xmax, 100) p = norm.pdf(x, mean, std) plt.plot(x, p, 'k', linewidth=2) plt.title(titulo) plt.show() except Exception as e: print(f"Erro: {str(e)}")
[documentos] def graf_bar_par(df : pd.DataFrame, coluna_x : str, coluna_y : list, title : str, xlabel : str, ylabel : str): """ Toma um dataframe e uma quantidade de colunas quista, cria e plota um grafico em barras com os dados das colunas escolhidas Parâmetros ---------- df : pd.DataFrame coluna_x : str Coluna que dita os objetos analisados colunas_y : list Lista com o nome das colunas do dataframe title : str xlabel : str ylabel : str Retorna ------- None. """ try: # Verifica se a coluna_x está presente no DataFrame if coluna_x not in df.columns: raise KeyError(f"A coluna {coluna_x} não foi encontrada no DataFrame dado.") # Verifica se todas as colunas em coluna_y estão presentes no DataFrame for y_column in coluna_y: if y_column not in df.columns: raise KeyError(f"A coluna {y_column} não foi encontrada no DataFrame dado.") categorias = df[coluna_x] bar_width = 0.35 posicoes = np.arange(len(categorias)) plt.figure(figsize=(10, 6)) for i, y_column in enumerate(coluna_y): offset = i * bar_width plt.bar(posicoes + offset, df[y_column], width=bar_width, label=y_column) plt.title(title) plt.xlabel(xlabel) plt.ylabel(ylabel) plt.xticks(posicoes + bar_width * (len(coluna_y) - 1) / 2, categorias) plt.legend() plt.grid(True) plt.show() except KeyError as e: print(f"Erro: {e}")
[documentos] def graf_curvas(df : pd.DataFrame, coluna_x: str, coluna_y: list, title : str, xlabel : str, ylabel : str): """ Toma um dataframe e uma quantidade de colunas quista, cria e plota as curvas com os valores dados pelas colunas Parâmetros ---------- df : pd.DataFrame coluna_x : str Coluna que dita os objetos analisados colunas_y : list Lista com o nome das colunas do dataframe title : str xlabel : str ylabel : str Retorna ------- None. """ try: # Verifica se a coluna_x está presente no DataFrame if coluna_x not in df.columns: raise KeyError(f"A coluna {coluna_x} não foi encontrada no DataFrame dado.") # Verifica se todas as colunas em coluna_y estão presentes no DataFrame for y_column in coluna_y: if y_column not in df.columns: raise KeyError(f"A coluna {y_column} não foi encontrada no DataFrame dado.") plt.figure(figsize=(10, 6)) for y_column in coluna_y: plt.plot(df[coluna_x], df[y_column], label=f'{y_column}') plt.title(title) plt.xlabel(xlabel) plt.ylabel(ylabel) plt.legend() plt.grid(True) plt.show() except KeyError as e: print(f"Erro: {e}")