quarree100 / qScope_frontend

Code for the projection of Q-Scope/CityScope@QUARREE100
0 stars 0 forks source link

UTF-8 in json strings #31

Closed dunland closed 2 years ago

dunland commented 2 years ago

JSON strings sent from stats.py are encoded in ascii, which is annoying. Fix this!

stats.py:

def send_dataframe_as_json(self, df):
    self.send_message(export_json(df, None))

def export_json(df, outfile):
    """Export a dataframe to JSON file."""
    return pandas.DataFrame(df).to_json(
        outfile, orient='records', force_ascii=False, default_handler=str)

def send_message(self, msg):
    if msg != self.previous_message:
        session.print_verbose("sending data:\n" + str(msg))
        try:
            self.io.emit('message', msg)
            self.previous_message = msg
        except Exception:
            pass

output:

['{
        "W\\u00e4rmeverbrauch 2017 [kWh]": 26055.0,
        "Stromverbrauch 2017 [kWh]": 3134.0,
        "waerme_2017_rel": 0.0672966316,
        "strom_2017_rel": 0.0316578448,
        "CO2": 1.4847843334,
        "investment": 0,
        "anschluss": 0,
        "selected": 2,
        "year": 0,
        "foerderung": 0,
        "CO2-Preis": 0,
        "connection_speedCO2-emissions": 0,
        "versorgung": 0,
        "answer": 0,
        "mode": "simulation",
        "questions": [
            "Die globale Erderw\\u00e4rmung wird durch von Menschen produzierte Emissionen verst\\u00e4rkt.",
            "Der Schutz der Umwelt ist ein Mittel zur St\\u00e4rkung des Wirtschaftswachstums in Deutschland.",
            "Ich glaube, dass wir jedes Mal, wenn wir Kohle, \\u00d6l oder Gas verwenden, zum Klimawandel beitragen.",
            "Ich w\\u00fcrde meinen Energieverbrauch reduzieren, wenn mein Haushalt mehr Energie verbraucht als \\u00e4hnliche Haushalte.",
            "Wenn ein erneuerbarer Energietarif bei einem anderen Energieversorger verf\\u00fcgbar w\\u00e4re, w\\u00fcrde ich meinen Anbieter wechseln."
        ],
        "question_index": 2,
        "question_number": 0,
        "question": "Ich glaube, dass wir jedes Mal, wenn wir Kohle, \\u00d6l oder Gas verwenden, zum Klimawandel beitragen.",
        "clusters": [
            {
                "adresse": "R\\u00fcsdorfer Stra\\u00dfe 20",
                "CO2": 0.8285381004,
                "anschluss": 0,
                "investment": 1,
                "versorgung": "medium",
                "W\\u00e4rmeverbrauch 2017 [kWh]": 26055.0,
                "Stromverbrauch 2017 [kWh]": 3134.0
            },
            {
                "adresse": "R\\u00fcsdorfer Stra\\u00dfe 30",
                "CO2": 0.656246233,
                "anschluss": 0,
                "investment": 1,
                "versorgung": "konventionell",
                "W\\u00e4rmeverbrauch 2017 [kWh]": null,
                "Stromverbrauch 2017 [kWh]": null
            }
        ]
    }'
]
dunland commented 2 years ago

we are simply not using Umlaute anymore.