Conjunto de cambios 0adbe8b en modelado_topicos para topic_explorer/views.py
- Fecha y hora:
- 14/02/2017 12:50:05 (hace 7 años)
- Branches:
- master, v1.0
- Children:
- dba583e
- Parents:
- 0a59649
- Fichero:
-
- 1 editado
Leyenda
- No modificado
- Añadido
- Eliminado
-
topic_explorer/views.py
r0a59649 r0adbe8b 1 # coding: utf-8 1 # -*- coding: utf-8 -*- 2 """ 3 Sistema de Modelado de Tópicos 4 5 Copyleft (@) 2014 CENDITEL nodo Mérida - https://planificacion.cenditel.gob.ve/trac/ 6 """ 7 ## @package django_topic_explorer.topic_explorer 8 # 9 # Métodos de la Vista, para visualizar los tópicos 10 # @author Jorge Redondo (jredondo at cenditel.gob.ve) 11 # @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e Investigación en TecnologÃas Libres 12 # (CENDITEL) nodo Mérida - Venezuela</a> 13 # @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 14 # @version 1.3 2 15 3 16 from django.shortcuts import render … … 5 18 from django.conf import settings 6 19 7 from django.http import HttpResponse, HttpResponse Redirect, HttpResponseServerError, StreamingHttpResponse20 from django.http import HttpResponse, HttpResponseServerError 8 21 9 22 import json 10 23 11 from utils import colorlib12 24 from utils.ldac2vsm import * 13 25 from utils.json_data import * 14 import itertools 15 from vsm.corpus import Corpus 16 from vsm.model.ldacgsmulti import LdaCgsMulti as LCM 26 #from vsm.corpus import Corpus 27 #from vsm.model.ldacgsmulti import LdaCgsMulti as LCM 17 28 from vsm.viewer.ldagibbsviewer import LDAGibbsViewer as LDAViewer 18 29 from vsm.viewer.wrappers import doc_label_name 19 from django.core import serializers20 30 21 31 from django.views.generic import TemplateView … … 25 35 import csv 26 36 27 from django.utils.safestring import mark_safe28 37 from django_topic_explorer.settings import FILES_PATH 29 30 38 from django_topic_explorer.settings import LDA_DATA_PATH 31 39 from django_topic_explorer.settings import LDA_CORPUS_FILE … … 35 43 36 44 #path = settings.PATH 37 corpus_file = settings.CORPUS_FILE45 #corpus_file = settings.CORPUS_FILE 38 46 #context_type = settings.CONTEXT_TYPE 39 47 context_type = 'propesta' … … 41 49 topics = settings.TOPICS 42 50 #corpus_name = settings.CORPUS_NAME 43 icons = settings.ICONS44 51 45 52 corpus_link = settings.CORPUS_LINK … … 65 72 66 73 def dump_exception(): 74 """! 75 Función para captar los errores e imprimirlos 76 77 @author Jorge Redondo (jredondo at cenditel.gob.ve) 78 @copyright GNU/GPLv2 79 @param request <b>{object}</b> Objeto que mantiene la peticion 80 @return Retorna una respuesta http con el error 81 """ 67 82 import sys,traceback 68 83 exc_type, exc_value, exc_traceback = sys.exc_info() … … 75 90 76 91 def doc_topic_csv(request, doc_id): 92 """! 93 Función para retornar un documento en csv 94 95 @author Jorge Redondo (jredondo at cenditel.gob.ve) 96 @copyright GNU/GPLv2 97 @param request <b>{object}</b> Objeto que mantiene la peticion 98 @param doc_id <b>{string}</b> Recibe el número del documento 99 @return Retorna los datos del documento 100 """ 77 101 global lda_v 78 102 try: … … 89 113 90 114 def doc_csv(request, k,doc_id,threshold=0.2): 115 """! 116 Función para retornar la data de los tópicos en csv 117 118 @author Jorge Redondo (jredondo at cenditel.gob.ve) 119 @copyright GNU/GPLv2 120 @param request <b>{object}</b> Objeto que mantiene la peticion 121 @param k <b>{int}</b> Recibe el número de tópicos a mostrar 122 @param doc_id <b>{string}</b> Recibe el número de tópicos 123 @param threshold <b>{int}</b> Recibe el limite estadÃstico 124 @return Retorna el render de la vista 125 """ 91 126 global k_param, lda_c, lda_m, lda_v 92 127 try: … … 98 133 LDA_CORPUS_DIR) 99 134 lda_v = LDAViewer(lda_c, lda_m) 100 #lda_m = LCM.load(model_pattern.format(k_param))101 #lda_v = LDAViewer(lda_c, lda_m)102 135 data = lda_v.sim_doc_doc(doc_id) 103 136 … … 112 145 113 146 def topic_json(request,k,topic_no, N=40): 147 """! 148 Función para retornar la data de los tópicos en json 149 150 @author Jorge Redondo (jredondo at cenditel.gob.ve) 151 @copyright GNU/GPLv2 152 @param request <b>{object}</b> Objeto que mantiene la peticion 153 @param k <b>{int}</b> Recibe el número de tópicos a mostrar 154 @param topic_no <b>{string}</b> Recibe el número de tópicos 155 @param N <b>{int}</b> Recibe la cantidad 156 @return Retorna el render de la vista 157 """ 114 158 global k_param, lda_c, lda_m, lda_v 115 159 try: … … 121 165 LDA_CORPUS_DIR) 122 166 lda_v = LDAViewer(lda_c, lda_m) 123 #global lda_v124 #lda_m = LCM.load(model_pattern.format(k_param))125 #lda_v = LDAViewer(lda_c, lda_m)126 167 try: 127 168 N = int(request.query.n) … … 148 189 149 190 def doc_topics(request,doc_id, N=40): 191 """! 192 Función para retornar la data de los documentos en json 193 194 @author Jorge Redondo (jredondo at cenditel.gob.ve) 195 @copyright GNU/GPLv2 196 @param request <b>{object}</b> Objeto que mantiene la peticion 197 @param doc_id <b>{string}</b> Recibe el número del documento 198 @param N <b>{int}</b> Recibe la cantidad 199 @return Retorna el render de la vista 200 """ 150 201 global lda_v 151 202 try: … … 167 218 168 219 def topics(request): 220 """! 221 Función para servir los tópicos como un json 222 223 @author Jorge Redondo (jredondo at cenditel.gob.ve) 224 @copyright GNU/GPLv2 225 @param request <b>{object}</b> Objeto que mantiene la peticion 226 @return Retorna el objeto json 227 """ 169 228 global lda_v 170 229 try: 171 #lda_c,lda_m = corpus_model(k_param,LDA_DATA_PATH.format(k_param),172 # LDA_CORPUS_FILE,173 # LDA_VOCAB_FILE,174 # LDA_CORPUS_DIR)175 #lda_v = LDAViewer(lda_c, lda_m)176 230 js=populateJson(lda_v) 177 231 return HttpResponse(json.dumps(js)) … … 181 235 182 236 def docs(request): 237 """! 238 Función para servir los documentos como un json 239 240 @author Jorge Redondo (jredondo at cenditel.gob.ve) 241 @copyright GNU/GPLv2 242 @param request <b>{object}</b> Objeto que mantiene la peticion 243 @return Retorna el objeto json 244 """ 183 245 global lda_v 184 246 try: 185 #lda_c,lda_m = corpus_model(k_param,LDA_DATA_PATH.format(k_param),186 # LDA_CORPUS_FILE,187 # LDA_VOCAB_FILE,188 # LDA_CORPUS_DIR)189 #lda_v = LDAViewer(lda_c, lda_m)190 247 docs = lda_v.corpus.view_metadata(context_type)[doc_label_name(context_type)] 191 248 js = list() … … 201 258 202 259 def index(request): 203 try: 204 #global lda_m,lda_v 205 #lda_m = LCM.load(model_pattern.format(10)) 206 #lda_v = LDAViewer(lda_c, lda_m) 260 """! 261 Función para visualizar el index del proyecto 262 263 @author Jorge Redondo (jredondo at cenditel.gob.ve) 264 @copyright GNU/GPLv2 265 @param request <b>{object}</b> Objeto que mantiene la peticion 266 @return Retorna el render de la vista 267 """ 268 try: 207 269 template_name = 'topic_explorer/index.html' 208 270 return render(request,template_name, 209 271 {'filename':None, 210 #'corpus_name' : corpus_name,211 272 'corpus_link' : corpus_link, 212 273 'context_type' : context_type, … … 218 279 219 280 def visualize(request,k,filename=None,topic_no=None): 281 """! 282 Función para visualizar los tópicos 283 284 @author Jorge Redondo (jredondo at cenditel.gob.ve) 285 @copyright GNU/GPLv2 286 @param request <b>{object}</b> Objeto que mantiene la peticion 287 @param k <b>{int}</b> Recibe el número de tópicos a mostrar 288 @param filename <b>{string}</b> Recibe el nombre del archivo 289 @param topic_no <b>{int}</b> Recibe el número de tópico 290 @return Retorna el render de la vista 291 """ 220 292 global k_param,lda_c,lda_m,lda_v 221 293 try: … … 227 299 LDA_CORPUS_DIR) 228 300 lda_v = LDAViewer(lda_c, lda_m) 229 #lda_m = LCM.load(model_pattern.format(k_param))230 #lda_v = LDAViewer(lda_c, lda_m)231 301 template_name = 'topic_explorer/index.html' 232 302 return render(request,template_name, … … 234 304 'k_param':k_param, 235 305 'topic_no':topic_no, 236 #'corpus_name' : corpus_name,237 306 'corpus_link' : corpus_link, 238 307 'context_type' : context_type, … … 244 313 245 314 class IrTopic(TemplateView): 315 """! 316 Clase que permite la visualización de un archivo en particular 317 @author Rodrigo Boet (rboet at cenditel.gob.ve) 318 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 319 @date 31-07-2015 320 """ 321 246 322 template_name='topic_explorer/verTopico.html' 323 324 247 325 def get(self, request, propuesta = None): 326 """! 327 Metodo que permite procesar las peticiones por get, con el fin de mostrar el documento 328 329 @author Rodrigo Boet (rboet at cenditel.gob.ve) 330 @copyright GNU/GPLv2 331 @date 31-07-2015 332 @param self <b>{object}</b> Objeto que instancia el método 333 @param request <b>{object}</b> Objeto que mantiene la peticion 334 @param propuesta <b>{int}</b> Recibe el número de la propuesta 335 @return Retorna el render de la vista 336 """ 248 337 global lda_v 249 #global k_param250 #lda_c,lda_m = corpus_model(k_param,LDA_DATA_PATH.format(k_param),251 # LDA_CORPUS_FILE,252 # LDA_VOCAB_FILE,253 # LDA_CORPUS_DIR)254 #lda_v = LDAViewer(lda_c, lda_m)255 338 #Obtnener json 256 339 Topic_Json = populateJson(lda_v) … … 266 349 mi_color = json.dumps(mi_color) 267 350 topicos = json.dumps(topicos) 268 #print topicos269 351 #carga el pre-procesado del archivo en una variable 270 352 texto='' … … 285 367 286 368 def obtenerValores(self,topicos):#funcion para obtener los colores del json 369 """! 370 Metodo para obtener los colores del json 371 372 @author Rodrigo Boet (rboet at cenditel.gob.ve) 373 @copyright GNU/GPLv2 374 @date 31-07-2015 375 @param self <b>{object}</b> Objeto que instancia el método 376 @param topicos <b>{dict}</b> Recibe un diccionario con los topicos 377 @return Retorna un diccionario con los colores 378 """ 287 379 my_topic=[] 288 380 for x in topicos: … … 291 383 292 384 def obtenerDocumento(self,docs,propuesta): 293 #document = {} 385 """! 386 Metodo para obtener un documento 387 388 @author Rodrigo Boet (rboet at cenditel.gob.ve) 389 @copyright GNU/GPLv2 390 @date 03-02-2016 391 @param self <b>{object}</b> Objeto que instancia el método 392 @param docs <b>{dict}</b> Recibe un diccionario con los documentos 393 @param propuesta <b>{int}</b> Recibe el número de la propuesta 394 @return Retorna un diccionario con los colores 395 """ 294 396 for x in docs: 295 397 if(x['doc']==propuesta):
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.