def samples_time_series(): """ Generate time series example for preview """ time_column = request.args.get('time') value_columns = request.args.get('values').split(',') time_format = request.args.get('tf') # separator processing separator = request.args.get('sep', ',') separator = separator.replace('\\t', '\t') aliases = {'dot': '.', 'comma': ',', 'tab': '\t', 'space': ' '} if separator in aliases: separator = aliases[separator] # check headless or not header = True if all(n.isdigit() for n in [time_column] + value_columns): header = False # generate all columns for headless csv if not header: max_column_n = max([int(v) for v in value_columns] + [0]) value_columns = range(1, max_column_n + 1) ts = generate_time_series_json(time_column, value_columns, time_format) csv_data = pd.DataFrame.from_dict(ts).to_csv(index=False, header=header, sep=separator).encode('utf-8') mem = io.BytesIO() mem.write(csv_data) mem.seek(0) return send_file(mem, as_attachment=False, attachment_filename='time-series.csv', mimetype='text/csv')
def samples_time_series(): """Generate time series example for preview""" time_column = request.args.get("time", "") value_columns = request.args.get("values", "").split(",") time_format = request.args.get("tf") # separator processing separator = request.args.get("sep", ",") separator = separator.replace("\\t", "\t") aliases = {"dot": ".", "comma": ",", "tab": "\t", "space": " "} if separator in aliases: separator = aliases[separator] # check headless or not header = True if all(n.isdigit() for n in [time_column] + value_columns): header = False # generate all columns for headless csv if not header: max_column_n = max([int(v) for v in value_columns] + [0]) value_columns = range(1, max_column_n + 1) ts = generate_time_series_json(time_column, value_columns, time_format) csv_data = (pd.DataFrame.from_dict(ts).to_csv( index=False, header=header, sep=separator).encode("utf-8")) mem = io.BytesIO() mem.write(csv_data) mem.seek(0) return send_file( mem, as_attachment=False, attachment_filename="time-series.csv", mimetype="text/csv", )