Rede-DSBR / CecateNE

Planejamento do Cecate FNDE - Região Nordeste
1 stars 0 forks source link

[🖼️ Comunicação] Diagramação do Projeto de Formação do Cecate Nordeste 🌵 #218

Closed jalinegm closed 1 day ago

jalinegm commented 2 weeks ago

📝🖼️ Diagramação do Projeto de Formação do Cecate Nordeste

📖 Descrição

O projeto de formação é um documento que precisa ser compartilhado com a equipe do FNDE. Por isso, é importante que esteja diagramado conforme os demais materiais adotados no Cecate Nordeste.

📌 Tipo de Conteúdo

Documento editável para garantir futuras adaptações ou correções.

🖼️ Mídia

Documento na pasta do projeto: https://drive.google.com/open?id=1lrqe6WBC8r4jMM6wbS6CtvSy9-jfaliG&usp=drive_fs (arquivo versão Maio - ignorar destaques em amarelo).

✅ Revisores

🙋 Pessoa Responsável

@dudabastos1973

🚀 Data de Início

16.05.2024

dudabastos1973 commented 2 weeks ago

import pandas as pd import matplotlib.pyplot as plt

Dados fornecidos

data = { "Estado": ["Alagoas", "Bahia", "Ceará", "Maranhão", "Paraíba", "Pernambuco", "Piauí", "Rio Grande do Norte", "Sergipe"], "Nº de Regiões Intermediárias": [2, 10, 6, 5, 4, 4, 6, 3, 2], "Nome das Regiões Intermediárias": [ "Maceió, Arapiraca", "Salvador, Santo Antônio de Jesus, Ilhéus-Itabuna, Vitória da Conquista, Guanambi, Barreiras, Irecê, Juazeiro, Paulo Afonso, Feira de Santana", "Fortaleza, Quixadá, Iguatu, Juazeiro do Norte, Crateús, Sobral", "São Luís, Santa Inês-Bacabal, Caxias, Presidente Dutra, Imperatriz", "João Pessoa, Campina Grande, Patos, Sousa-Cajazeiras", "Recife, Caruaru, Serra Talhada, Petrolina", "Teresina, Parnaíba, Picos, São Raimundo Nonato, Corrente-Bom Jesus, Floriano", "Natal, Caicó, Mossoró", "Aracaju, Itabaiana" ] }

Convert to DataFrame

df = pd.DataFrame(data)

Define colors

header_colors = ['#ffd700', '#1e90ff', '#32cd32'] row_colors = ['#f3f3f3', '#FFFFFF'] text_color = '#000000'

Plotting the table with the desired layout and tripled row height

fig, ax = plt.subplots(figsize=(30, 36)) # Increased height to accommodate tripled row height ax.axis('off')

Create table with specified header colors

tbl = ax.table(cellText=df.values, colLabels=df.columns, cellLoc='center', loc='center', colColours=header_colors)

Styling

tbl.auto_set_font_size(False) tbl.set_fontsize(12) tbl.scale(1.5, 3.0) # Adjusting scale for better fit

Header style

for key, cell in tbl.get_celld().items(): if key[0] == 0: cell.set_fontsize(14) cell.set_text_props(weight='bold', color=text_color) cell.set_edgecolor(text_color)

Alternate row colors for better readability

for i in range(1, len(df) + 1): color = row_colors[i % 2] for j in range(len(df.columns)): tbl[(i, j)].set_facecolor(color)

Save the table as a high-quality PNG image with the specified layout

output_image_path_layout_triple_height = "/mnt/data/high_quality_table_layout_triple_height_final.png" plt.savefig(output_image_path_layout_triple_height, format='png', dpi=300)

output_image_path_layout_triple_height

jalinegm commented 1 week ago

Script atualizado

import pandas as pd
import matplotlib.pyplot as plt

data = {
    "Estado": ["Alagoas", "Bahia", "Ceará", "Maranhão", "Paraíba", "Pernambuco", "Piauí", "Rio Grande do Norte", "Sergipe"],
    "Nº de Regiões \nIntermediárias": [2, 10, 6, 5, 4, 4, 6, 3, 2],
    "Nome das Regiões Intermediárias": [
        "Arapiraca, Maceió",
        "Barreiras, Feira de Santana, Guanambi, \nIlhéus-Itabuna, Irecê, Juazeiro, Paulo Afonso, \nSalvador, Santo Antônio de Jesus, Vitória da Conquista",
        "Crateús, Fortaleza, Iguatu, \nJuazeiro do Norte, Quixadá, Sobral",
        "Caxias, Imperatriz, Presidente Dutra, \nSanta Inês-Bacabal, São Luís",
        "Campina Grande, João Pessoa, \nPatos, Sousa-Cajazeiras",
        "Caruaru, Petrolina, Recife, Serra Talhada",
        "Corrente-Bom Jesus, Floriano, Parnaíba, \nPicos, São Raimundo Nonato, Teresina",
        "Caicó, Mossoró, Natal",
        "Aracaju, Itabaiana"
    ]
}

# Convert to DataFrame
df = pd.DataFrame(data)

# Define colors
header_colors = ['#ffd700', '#38b6ff', '#32cd32']
row_colors = ['#f3f3f3', '#FFFFFF']
text_color = '#000000'
border_color = '#d9d9d9'#byJaline

# Plotting the table
fig, ax = plt.subplots(figsize=(12,8)) 
ax.axis('off')

# Create table with specified header colors
tbl = ax.table(cellText=df.values, colLabels=df.columns, cellLoc='center', loc='center',
               colColours=header_colors)

# Styling
tbl.auto_set_font_size(False)
tbl.set_fontsize(12)
tbl.scale(1, 3.8)

# Adjust column widths
tbl.auto_set_column_width([0, 1, 2]) 

'''
# Manually adjust column widths
#col_widths = [0.2, 0.2, 0.6]  # Defining manual column widths as a fraction of the figure width

for i, width in enumerate(col_widths):
    for j in range(len(df) + 1):  # +1 to include the header row
        tbl[(j, i)].set_width(width)
'''

# Header style
for key, cell in tbl.get_celld().items():
    cell.set_edgecolor(border_color)
    if key[1]==2:                   
        cell.PAD = 0.015
    if key[0] == 0:
        cell.set_fontsize(14)
        cell.set_text_props(weight='bold', color=text_color)

for i in range(1, len(df) + 1):
    tbl[(i, 2)].set_text_props(ha='left', va='center')

# Alternate row colors for better readability
for i in range(1, len(df) + 1):
    color = row_colors[i % 2]
    for j in range(len(df.columns)):
        tbl[(i, j)].set_facecolor(color)

import os
my_path = os.path.dirname(os.path.abspath(__file__))
print(my_path)

# Save the table as a high-quality PNG image with the specified layout
output_image_path_layout_triple_height = "high_quality_table_layout_triple_height_final.png"
plt.savefig(os.path.join(my_path, output_image_path_layout_triple_height), format='png', dpi=300, bbox_inches='tight')

#print("Imagem salva como", output_image_path_layout_triple_height)

Imagem gerada high_quality_table_layout_triple_height_final

jalinegm commented 1 week ago

Material diagramado por @dudabastos1973 https://www.canva.com/design/DAGFO9EVveo/_awY9v6hzJMKc7jp2qY4tQ/

Podemos fechar a issue, Profa. @Kelliconsuelo e Profa. @Catia1409 ?