Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.shortcuts import render
- from django.http import HttpResponse
- from cassandra.cluster import Cluster
- from cassandra.auth import PlainTextAuthProvider
- import pandas as pd
- import json, configparser
- from pandas.io.json import json_normalize
- from shapely.geometry import Polygon, Point
- def index(request):
- configParser = configparser.RawConfigParser()
- configFilePath = r'config.ini'
- configParser.read(configFilePath)
- bbdd_name = configParser.get('bbdd-config', 'bbdd')
- cluster = Cluster(
- contact_points=['127.0.0.1'],
- auth_provider = PlainTextAuthProvider(username='cassandra', password='cassandra')
- )
- session = cluster.connect()
- session.set_keyspace(bbdd_name)
- session.default_fetch_size = 10000000
- rows = session.execute("""select * from bbt_monitors""")
- try:
- rs = list(rows)
- df = pd.DataFrame(rs)
- df = df.loc[df.groupby('name').date_timestamp.idxmax(),:]
- polygon1_list = [(41.819039, 1.980684), (41.819107, 1.980647), (41.81913, 1.980722), (41.819069, 1.980772)]
- polygon2_list = [(41.819234, 1.980722), (41.819194, 1.980742), (41.819229, 1.980856), (41.819266, 1.980824)]
- df["polygon1"] = df.apply(lambda row: Polygon(polygon1_list).contains(Point(row["lat"], row["lng"])), axis = 1)
- df["polygon2"] = df.apply(lambda row: Polygon(polygon2_list).contains(Point(row["lat"], row["lng"])), axis = 1)
- return HttpResponse(df.to_html())
- except Exception:
- return HttpResponse("<H1>NO VALUES</H1>")
- #return render(request, "analytics_charts.html", {'df':df, 'type':'humidity', 'df_max':df_max, 'df_min':df_min, 'title':'Humidity Analytics', 'unity':'%', 'alerts':'yes', 'filter_type':filter_type})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement