def boxplot_view(request): if request.method == "POST": var = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "cajas"+var png(file=suffix_dir+name_file+ext_file) #se preparan los valores. TODO: Refactorizar casteo. Hacer mas eficiente. values = Value.objects.filter(column=var) list_values = [v.cast_value() for v in values] #creacion de vector R con los valores correspondientes (R) vector = robjects.FloatVector(list_values) #parametros del grafico main="Grafico de Caja para %s" %(Column.objects.get(pk=var).name) xlab="Valores" boxplot(vector,main=main,xlab=xlab) off() #Guardo el resultado y lo muestro en la cola de salida out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def map_point_density_view(request): if request.method == "POST": var1 = request.POST['column_geo'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) point_values_lat = [p.point.geom.x for p in values_var1 if p.point] point_values_lng = [p.point.geom.y for p in values_var1 if p.point] errors = "" vector_var1 = robjects.FloatVector(point_values_lat) vector_var2 = robjects.FloatVector(point_values_lng) main = "Grafico de Densidad Por Puntos de %s" % (Column.objects.get( pk=int(var1)).name) xlab = "Latitud" ylab = "Longitud" name_file = "density_point" + var1 png(file=suffix_dir + name_file + ext_file) scatterplot(vector_var1, vector_var2, main=main, xlab=xlab, ylab=ylab) off() out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def map_area_r_view(request): datasource_id = request.POST.get('datasource') column_geo = request.POST.get('column_geo') datasource = DataSource.objects.get(pk=datasource_id) areas = Value.objects.filter(column__datasource=datasource_id,column=column_geo).values("area").annotate(Count('area')).order_by() shp_name = str(int(datasource_id)+int(column_geo)) min_val = 0 max_val = 1023 polys = [] suffix_dir = "media/graphics/" ext_file = ".png" main = "Grafico de Densidad Por Puntos de %s" xlab = "Latitud" ylab = "Longitud" png(file=suffix_dir+shp_name+ext_file) generate_shp(areas,shp_name+'.shp') shp_file = pbsmapping.importShapefile(settings.SHP_UPLOAD_DIR+shp_name) pbsmapping.plotPolys(shp_file) off() out = Out() out.img = str(shp_name+ext_file) out.save() return redirect("/outqueue")
def barplot_view(request): if request.method == "POST": var1 = request.POST['var-0'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) list_values_var1 = [v.cast_value() for v in values_var1] errors = "" #configuracion para el grafico try: vector_var1 = robjects.FloatVector(list_values_var1) except e: errors = e name_file = "bar" + var1 png(file=suffix_dir + name_file + ext_file) bar(vector_var1) off() out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def map_point_density_view(request): if request.method == "POST": var1 = request.POST['column_geo'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) point_values_lat = [p.point.geom.x for p in values_var1 if p.point] point_values_lng = [p.point.geom.y for p in values_var1 if p.point] errors="" vector_var1 = robjects.FloatVector(point_values_lat) vector_var2 = robjects.FloatVector(point_values_lng) main = "Grafico de Densidad Por Puntos de %s" %(Column.objects.get(pk=int(var1)).name) xlab = "Latitud" ylab = "Longitud" name_file = "density_point"+var1 png(file=suffix_dir+name_file+ext_file) scatterplot(vector_var1,vector_var2,main=main,xlab=xlab,ylab=ylab) off() out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def scatterplotmatrix_view(request): if request.method == "POST": var1 = request.POST['var-0'] var2 = request.POST['var-1'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) values_var2 = Value.objects.filter(column=var2) list_values_var1 = [v.cast_value() for v in values_var1] list_values_var2 = [v.cast_value() for v in values_var2] errors = "" vector_var1 = robjects.FloatVector(list_values_var1) vector_var2 = robjects.FloatVector(list_values_var2) main = "Grafico de Dispersion para %s" % (Column.objects.get( pk=var1).name + '-' + Column.objects.get(pk=var2).name) ylab = "" xlab = "Valores" name_file = "scatterplotmatrix" + var1 + var2 png(file=suffix_dir + name_file + ext_file) scatterplotmatrix([vector_var1, vector_var2]) off() out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def densityplot_view(request): if request.method == "POST": var1 = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "density" + var1 png(file=suffix_dir + name_file + ext_file) values_var1 = Value.objects.filter(column=var1) list_values_var1 = [v.cast_value() for v in values_var1] errors = "" #configuracion para el grafico vector = robjects.FloatVector(list_values_var1) main = "Grafico de Densidad para" + Column.objects.get(pk=var1).name xlab = "Valores" densityplot(vector, main=main, xlab=xlab) off() out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def map_area_r_view(request): datasource_id = request.POST.get('datasource') column_geo = request.POST.get('column_geo') datasource = DataSource.objects.get(pk=datasource_id) areas = Value.objects.filter(column__datasource=datasource_id, column=column_geo).values("area").annotate( Count('area')).order_by() shp_name = str(int(datasource_id) + int(column_geo)) min_val = 0 max_val = 1023 polys = [] suffix_dir = "media/graphics/" ext_file = ".png" main = "Grafico de Densidad Por Puntos de %s" xlab = "Latitud" ylab = "Longitud" png(file=suffix_dir + shp_name + ext_file) generate_shp(areas, shp_name + '.shp') shp_file = pbsmapping.importShapefile(settings.SHP_UPLOAD_DIR + shp_name) pbsmapping.plotPolys(shp_file) off() out = Out() out.img = str(shp_name + ext_file) out.save() return redirect("/outqueue")
def scatterplot_view(request): if request.method == "POST": var1 = request.POST['var-0'] var2 = request.POST['var-1'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) values_var2 = Value.objects.filter(column=var2) list_values_var1 = [v.cast_value() for v in values_var1] list_values_var2 = [v.cast_value() for v in values_var2] errors = "" #configuracion para el grafico vector_var1 = robjects.FloatVector(list_values_var1) vector_var2 = robjects.FloatVector(list_values_var2) name_file = "scatter" + var1 + var2 png(file=suffix_dir + name_file + ext_file) scatterplot(vector_var1, vector_var2) off() out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def boxplot_view(request): if request.method == "POST": var = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "cajas" + var png(file=suffix_dir + name_file + ext_file) #se preparan los valores. TODO: Refactorizar casteo. Hacer mas eficiente. values = Value.objects.filter(column=var) list_values = [v.cast_value() for v in values] #creacion de vector R con los valores correspondientes (R) vector = robjects.FloatVector(list_values) #parametros del grafico main = "Grafico de Caja para %s" % (Column.objects.get(pk=var).name) xlab = "Valores" boxplot(vector, main=main, xlab=xlab) off() #Guardo el resultado y lo muestro en la cola de salida out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def barplot_view(request): if request.method == "POST": var1 = request.POST['var-0'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) list_values_var1 = [v.cast_value() for v in values_var1] errors="" #configuracion para el grafico try: vector_var1 = robjects.FloatVector(list_values_var1) except e: errors = e name_file = "bar"+var1 png(file=suffix_dir+name_file+ext_file) bar(vector_var1) off() out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def densityplot_view(request): if request.method == "POST": var1 = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "density"+var1 png(file=suffix_dir+name_file+ext_file) values_var1 = Value.objects.filter(column=var1) list_values_var1 = [v.cast_value() for v in values_var1] errors="" #configuracion para el grafico vector = robjects.FloatVector(list_values_var1) main="Grafico de Densidad para"+Column.objects.get(pk=var1).name xlab="Valores" densityplot(vector,main=main,xlab=xlab) off() out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def scatterplotmatrix_view(request): if request.method == "POST": var1 = request.POST['var-0'] var2 = request.POST['var-1'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) values_var2 = Value.objects.filter(column=var2) list_values_var1 = [v.cast_value() for v in values_var1] list_values_var2 = [v.cast_value() for v in values_var2] errors="" vector_var1 = robjects.FloatVector(list_values_var1) vector_var2 = robjects.FloatVector(list_values_var2) main="Grafico de Dispersion para %s" %(Column.objects.get(pk=var1).name+'-'+Column.objects.get(pk=var2).name) ylab="" xlab="Valores" name_file = "scatterplotmatrix"+var1+var2 png(file=suffix_dir+name_file+ext_file) scatterplotmatrix([vector_var1, vector_var2]) off() out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def scatterplot_view(request): if request.method == "POST": var1 = request.POST['var-0'] var2 = request.POST['var-1'] suffix_dir = "media/graphics/" ext_file = ".png" values_var1 = Value.objects.filter(column=var1) values_var2 = Value.objects.filter(column=var2) list_values_var1 = [v.cast_value() for v in values_var1] list_values_var2 = [v.cast_value() for v in values_var2] errors="" #configuracion para el grafico vector_var1 = robjects.FloatVector(list_values_var1) vector_var2 = robjects.FloatVector(list_values_var2) name_file = "scatter"+var1+var2 png(file=suffix_dir+name_file+ext_file) scatterplot(vector_var1, vector_var2) off() out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def stripchart_view(request): if request.method == "POST": var = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "stripchart" + var png(file=suffix_dir + name_file + ext_file) #se preparan los valores. TODO: Refactorizar casteo. Hacer mas eficiente. values = Value.objects.filter(column=var) list_values = [v.cast_value() for v in values] #creacion de vector R con los valores correspondientes (R) vector = robjects.FloatVector(list_values) #parametros del grafico jitter = 0.2 offset = 1 / 3 vertical = False main = "Grafico de Puntos para %s" % (Column.objects.get(pk=var).name) ylab = "Valores" xlab = "" pch = 1 col = par("fg") cex = par("cex") strip(vector, method="jitter", jitter=jitter, offset=offset, vertical=vertical, main=main, xlab=xlab, pch=pch, col=col, cex=cex) off() #Guardo el resultado y lo muestro en la cola de salida out = Out() out.img = str(name_file + ext_file) out.save() return redirect("/outqueue")
def stripchart_view(request): if request.method == "POST": var = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "stripchart"+var png(file=suffix_dir+name_file+ext_file) #se preparan los valores. TODO: Refactorizar casteo. Hacer mas eficiente. values = Value.objects.filter(column=var) list_values = [v.cast_value() for v in values] #creacion de vector R con los valores correspondientes (R) vector = robjects.FloatVector(list_values) #parametros del grafico jitter=0.2 offset=1/3 vertical=False main="Grafico de Puntos para %s" %(Column.objects.get(pk=var).name) ylab="Valores" xlab="" pch=1 col=par("fg") cex=par("cex") strip(vector,method="jitter",jitter=jitter,offset=offset,vertical=vertical,main=main,xlab=xlab,pch=pch,col=col,cex=cex) off() #Guardo el resultado y lo muestro en la cola de salida out = Out() out.img = str(name_file+ext_file) out.save() return redirect("/outqueue")
def histogram_view(request): if request.method == "POST": var = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "histograma" + var png(file=suffix_dir + name_file + ext_file) errors = '' #se preparan los valores. TODO: Refactorizar casteo. Hacer mas eficiente. values = Value.objects.filter(column=var) list_values = [v.cast_value() for v in values] #creacion de vector R con los valores correspondientes (R) vector = robjects.FloatVector(list_values) #parametros del grafico freq = False probability = not freq include = True right = True col = "blue" border = par("fg") main = "Histograma de %s" % (Column.objects.get(pk=var).name) xlab = "Valores" ylab = "Frecuencia" try: hist(vector, col=col, border=border, main=main, xlab=xlab, ylab=ylab) off() except UnboundLocalError: errors += "" #Guardo el resultado y lo muestro en la cola de salida out = Out() out.img = str(name_file + ext_file) out.errors = errors out.text = main out.save() return redirect("/outqueue")
def histogram_view(request): if request.method == "POST": var = request.POST['var-0'] #configuracion para tipo de archivo donde se guarda el grafico y nombre del mismo suffix_dir = "media/graphics/" ext_file = ".png" name_file = "histograma"+var png(file=suffix_dir+name_file+ext_file) errors = '' #se preparan los valores. TODO: Refactorizar casteo. Hacer mas eficiente. values = Value.objects.filter(column=var) list_values = [v.cast_value() for v in values] #creacion de vector R con los valores correspondientes (R) vector = robjects.FloatVector(list_values) #parametros del grafico freq = False probability = not freq include = True right = True col = "blue" border = par("fg") main = "Histograma de %s" %(Column.objects.get(pk=var).name) xlab = "Valores" ylab = "Frecuencia" try: hist(vector,col=col,border=border,main=main,xlab=xlab,ylab=ylab) off() except UnboundLocalError: errors += "" #Guardo el resultado y lo muestro en la cola de salida out = Out() out.img = str(name_file+ext_file) out.errors = errors out.text = main out.save() return redirect("/outqueue")