-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathelecciones.py
98 lines (77 loc) · 4.29 KB
/
elecciones.py
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# -*- coding: utf-8 -*-
"""ELECCIONES
Automatically generated by Colab.
Original file is located at
https://colab.research.google.com/drive/1fpcLtEfhkYbgwtYhPrgO4wDVF4amSmjb
"""
#IMPORTACIÓN DE LIBRERIAS
import matplotlib.pyplot as plt
import numpy as np
#DEFINICIÓN DE VARIABLES
años_electorales = [1983, 1989, 1995, 1999, 2003, 2007, "Paso 11", "Generales 11", "Paso 15", "Generales 15", "Ballotage 15", "Paso 19", "Generales 19", "Paso 23", "Generales 23", "Ballotage 23"]
electores_habilitados = [17929951,20034252,22178201,24111270,25481410,27137536,28861216,28916183,32067641,32130853,32108509,33848339,34231721,34491607,34898212,35193985]
votantes = [15350186,17091620,18203924,19849341,19930911,20679327,22705378,22956385,24021816,26048446,25935243,25859967,27529896,24016776,27100675,26863246]
votos_blanco = [334946,222048,653443,708876,196563,1331011,1007753,803362,1216634,664740,306641,882633,441503,1148342,554161,417515]
voto_afirmativo = [14927512,16749128,17395284,18953704,19388697,19107140,22430427,21927282,22551076,25184257,25297924,24659333,26838336,22539543,26291718,25992604]
voto_nulo = [87728,116049,125112,186761,345651,2411745,274971,225741,254106,199449,330848,318001,250057,293041,224864,438681]
años_electorales = [str(año) for año in años_electorales]
#CALCULOS
promedio_votantes = sum (votantes)/len (años_electorales)
print ("el promedio de votantes desde el regreso de la Democracia es: ", promedio_votantes)
desvio_estandar_votantes = np.std(votantes)
print ("el desvio estandar es ", desvio_estandar_votantes)
coeficiente_variacion_electores = (desvio_estandar_votantes)/(promedio_votantes)*100
print ("el coeficiente de variacion de electores es ", coeficiente_variacion_electores)
#CREACION DE GRAFICOS
plt.figure(figsize=(14, 7))
plt.plot (años_electorales, electores_habilitados, color = "#DC143C", alpha=0.7, label = "Electores habilitados")
plt.plot (años_electorales, votantes, color = '#8A2BE2',alpha=0.7, label = "Participacion electoral")
plt.plot (años_electorales, voto_afirmativo, color = '#7FFF00',alpha=0.7, label = "Votos afirmativos")
plt.plot (años_electorales, votos_blanco, color = '#2F4F4F',alpha=0.7, label = "Votos en blanco")
plt.plot (años_electorales, voto_nulo, color = '#FF7F50',alpha=0.7, label = "Votos nulos")
#PERSONALIZACION DEL GRAFICO
plt.legend()
plt.xticks(rotation=45)
plt.xlabel('Instancias electorales')
plt.ylabel('Población en millones')
plt.title ("Comportamiento Electoral - elecciones presidenciales a nivel nacional")
plt.grid (True, linestyle='--', alpha=0.5)
plt.tight_layout()
plt.show()
#CREACION DE GRAFICOS
import matplotlib.pyplot as plt
import numpy as np
plt.figure(figsize=(14,8))
plt.plot (años_electorales, voto_nulo, color = '#FF7F50',alpha=0.7, label = "Votos nulos")
for i, (votante, habilitado) in enumerate(zip(voto_nulo, electores_habilitados)):
porcentaje = (votante / habilitado) * 100
plt.text(i, votante + 45000, f'{porcentaje:.1f}%', ha='center', va='bottom')
plt.plot (años_electorales, votos_blanco, color = '#2F4F4F',alpha=0.7, label = "Votos en blanco")
for i, (votante, habilitado) in enumerate(zip(votos_blanco, electores_habilitados)):
porcentaje = (votante / habilitado) * 100
plt.text(i, votante + 45000, f'{porcentaje:.1f}%', va='bottom')
plt.legend() #PARA QUE MUESTRE LA ETIQUETA
plt.xticks(rotation=45) #ROTACION DE CATEGORIAS
plt.xlabel('Instancias electorales')
plt.ylabel('Población en millones')
plt.title ('Detalle de votos - Elecciones Presidenciales a Nivel Nacional')
plt.grid (True, linestyle='--', alpha=0.5)
plt.show()
#PARTICIPACION ELECTORAL
# CREACIÓN DE GRÁFICO DE BARRAS
plt.figure(figsize=(14, 7))
plt.bar(años_electorales, votantes, color='#483D8B', alpha=0.7)
for i, (votante, habilitado) in enumerate(zip(votantes, electores_habilitados)):
porcentaje = (votante / habilitado) * 100
plt.text(i, votante + 500000, f'{porcentaje:.1f}%', ha='center', va='bottom')
# PERSONALIZACIÓN DEL GRÁFICO
plt.legend() # Mostrar la leyenda
plt.xticks(rotation=45) # Rotación de las etiquetas del eje x
plt.xlabel('Instancias electorales')
plt.ylabel('Población en millones')
plt.title('Participación Electoral - Elecciones Presidenciales a Nivel Nacional')
plt.grid(True, linestyle='--', alpha=0.5)
# Ajustar el diseño para evitar superposición
plt.tight_layout()
# Mostrar el gráfico
plt.show()