Exemple #1
0
def registro():
    if request.method == 'GET':
        # Si entré por "GET" es porque acabo de cargar la página
        try:
            return render_template('registro.html')
        except:
            return jsonify({'trace': traceback.format_exc()})

    if request.method == 'POST':
        try:
            # Obtener del HTTP POST JSON los pulsos
            nombre = str(request.form.get('name'))
            pulsos = str(request.form.get('heartrate'))

            if(nombre is None or pulsos is None or pulsos.isdigit() is False):
                # Datos ingresados incorrectos
                    return Response(status=400)
            time = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")
            heart.insert(time, nombre, int(pulsos))

            # Como respuesta al POST devolvemos el gráfico
            # de pulsacionesde la persona
            time, heartrate = heart.chart(nombre)

            # Crear el grafico que se desea mostrar
            fig, ax = plt.subplots(figsize=(16, 9))
            ax.plot(time, heartrate)
            ax.get_xaxis().set_visible(False)

            output = plot_to_canvas(fig)
            encoded_img = base64.encodebytes(output.getvalue())
            plt.close(fig)  # Cerramos la imagen para que no consuma memoria del sistema
            return Response(encoded_img, mimetype='image/png')
        except:
            return jsonify({'trace': traceback.format_exc()})
Exemple #2
0
def pulsaciones_historico(name):
    try:
        # Obtener el nombre en minúscula
        name = name.lower()
        # Obtener el historial de la persona de la DB
        print("Obtener gráfico de la persona", name)
        time, heartrate = heart.chart(name)

        # Transformar los datos en una imagen HTML con matplotlib
        image_html = utils.graficar(time, heartrate)
        return Response(image_html.getvalue(), mimetype='image/png')
    except:
        return jsonify({'trace': traceback.format_exc()})
Exemple #3
0
def pulsaciones_historico(name):
    try:
        # Obtener el historial de la persona
        time, heartrate = heart.chart(name)

        # Crear el grafico que se desea mostrar
        fig, ax = plt.subplots(figsize=(16, 9))
        ax.plot(time, heartrate)
        ax.get_xaxis().set_visible(False)

        output = plot_to_canvas(fig)
        plt.close(fig)  # Cerramos la imagen para que no consuma memoria del sistema
        return Response(output.getvalue(), mimetype='image/png')
    except:
        return jsonify({'trace': traceback.format_exc()})
Exemple #4
0
def pulsaciones_historico(name):
    try:
        # Obtener el historial de la persona
        time, heartrate = heart.chart(name)

        # Crear el grafico que se desea mostrar
        fig, ax = plt.subplots(figsize=(16, 9))
        ax.plot(time, heartrate)
        ax.get_xaxis().set_visible(False)

        # Convertir ese grafico en una imagen para enviar por HTTP
        # y mostrar en el HTML
        output = io.BytesIO()
        FigureCanvas(fig).print_png(output)
        return Response(output.getvalue(), mimetype='image/png')
    except:
        return jsonify({'trace': traceback.format_exc()})