-
Notifications
You must be signed in to change notification settings - Fork 0
/
Heatmap_AlertaRio
76 lines (59 loc) · 4.07 KB
/
Heatmap_AlertaRio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import pandas as pd
from matplotlib import pyplot as plt
import seaborn as sns
estacoes = ['Alto da Boa Vista', 'Anchieta', 'Av. Brasil/Mendanha', 'Bangu', 'Barra/Barrinha', 'Barra/Riocentro', 'Campo Grande',
'Copacabana', 'Est. Grajaú/Jacarepaguá', 'Grajaú', 'Grande Méier', 'Grota Funda', 'Guaratiba',
'Ilha do Governador', 'Irajá', 'Jacarepaguá/Cidade de Deus', 'Jacarepaguá/Tanque', 'Jardim Botânico',
'Laranjeiras', 'Madureira', 'Penha', 'Piedade', 'Recreio dos Bandeirantes', 'Rocinha', 'Santa Cruz',
'Santa Teresa', 'São Cristóvão', 'Saúde', 'Sepetiba', 'Tijuca', 'Tijuca/Muda', 'Urca', 'Vidigal']
anomalia_janeiro = [0.42, 0.14, 0.53, 0.58, 0.00, 0.67, 0.25, 0.14, 0.11, -0.19, -0.19, 0.48, 0.24, -0.15,
-0.04, 0.74, 0.70, 0.13, 0.12, 0.17, -0.02, -0.23, 0.45, 0.24, -0.05, -0.02, 0.26, 0.22,
0.16, 0.08, -0.16, 0.27, 0.03]
anomalia_fevereiro = [0.47, 0.65, 1.20, 0.43, -0.24, 0.71, 0.28, 0.68, 0.12, 1.86, 2.74, 0.10, 0.26, 1.00,
1.03, 0.62, 0.54, 1.05, 1.24, 0.65, 1.06, 1.18, 0.09, 1.09, 0.53, 0.91, 2.49, 1.73,
0.69, 0.90, 1.41, 0.85, 1.10]
anomalia_março = [-0.81, 0.34, -0.03, -0.06, -0.85, -0.59, -0.35, -0.45, -0.61, -0.45, -0.35, -0.61, -0.46,
-0.71, -0.34, -0.72, -0.31, -0.50, -0.61, -0.34, -0.31, -0.41, -0.67, -0.67, -0.56, -0.62,
-0.47, -0.75, -0.42, -0.47, -0.28, -0.74, -0.56]
anomalia_abril = [0.03, 0.22, -0.32, -0.10, 0.01, 0.12, 0.00, 0.01, 0.03, 0.50, 0.63, 0.01, 0.36, 0.68, 0.09,
-0.03, 0.02, 0.49, 0.35, 0.09, 0.64, 0.35, 0.34, 0.20, 0.06, 0.53, 0.41, 0.62, 0.06, 0.09,
0.37, 0.80, 0.49]
anomalia_maio = [-0.01, -0.02, 0.40, -0.15, 0.23, 0.32, 0.27, -0.04, 0.23, -0.19, 0.60, 0.21, 0.37, -0.03,
-0.02, 0.07, 0.15, 0.31, -0.13, -0.09, 0.05, 0.39, 0.23, 0.12, 0.27, -0.18, -0.20, -0.11,
0.61, -0.09, -0.02, 0.04, -0.04]
anomalia_junho = [-0.79, -0.45, -0.94, -0.81, -0.83, -0.83, -0.80, -0.83, -0.81, -0.59, -0.67, -0.91, -0.91,
-0.60, -0.88, -0.74, -0.67, -0.80, -0.82, -0.83, -0.81, -0.78, -0.91, -0.82, -0.98, -0.83,
-0.93, -0.74, -0.85, -0.82, -0.76, -0.83, -0.82]
anomalia_julho = [0.25, 0.84, 0.40, 0.30, -0.37, -0.21, -0.33, -0.59, -0.55, -0.16, -0.20, 0.06, -0.40, 0.30, -0.25,
-0.49, -0.28, -0.51, -0.37, 0.07, -0.01, -0.35, -0.24, -0.39, -0.23, -0.38, 0.27, 0.01, -0.33, 0.43,
0.82, -0.66, -0.61]
anomalia_agosto = [0.85, 1.71, 0.61, 1.02, 2.60, 1.58, 0.73, 1.93, 0.33, 1.35, 2.35, 2.99, 2.57, 1.12, 2.92, 0.91, 1.12,
2.86, 2.93, 1.46, 2.00, 1.87, 2.52, 3.16, 0.91, 1.98, 2.61, 2.25, 1.11, 1.68, 1.54, 2.19, 1.74]
anomalia_setembro = [-0.52, -0.10, -0.63, -0.74, -0.65, -0.50, -0.71, -0.73, -0.54, -0.62, -0.76, -0.66, -0.70, -0.54,
-0.50, -0.47, -0.55, -0.61, -0.66, -0.39, -0.63, -0.68, -0.73, -0.63, -0.47, -0.73, -0.67, -0.65,
-0.71, -0.58, -0.44, -0.68, -0.60]
#Criando um Dataframe no pandas
anomalias = []
anomalias = pd.DataFrame(estacoes)
anomalias['Janeiro'] = anomalia_janeiro
anomalias['Fevereiro'] = anomalia_fevereiro
anomalias['Março'] = anomalia_março
anomalias['Abril'] = anomalia_janeiro
anomalias['Maio'] = anomalia_fevereiro
anomalias['Junho'] = anomalia_março
anomalias['Julho'] = anomalia_julho
anomalias['Agosto'] = anomalia_agosto
anomalias['Setembro'] = anomalia_setembro
anomalias = anomalias.drop([0], axis=1)
#Plotando a figura
#A opção yticklabels insere o nome das estações na legenda
#A opção center centraliza a escala de cores em 0
#A opção annot permite escrever os valores em cada quadradinho
#A opção square permite transformar os retângulos em quadradinhos
fig, ax = plt.subplots(figsize=(7, 10))
sns.heatmap(anomalias, cmap='coolwarm_r',
center=0, annot=False, yticklabels=estacoes,
linewidth=.5, square=False)
ax.set_title('Anomalias Mensais de Precipitação - Sistema Alerta Rio - 2023',
fontsize = 15,color = 'black')
ax=ax