Advertisement
Guest User

Untitled

a guest
Jul 12th, 2018
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.67 KB | None | 0 0
  1. from django.shortcuts import render
  2. from django.http import HttpResponse
  3. from cassandra.cluster import Cluster
  4. from cassandra.auth import PlainTextAuthProvider
  5. import pandas as pd
  6. import json, configparser
  7. from pandas.io.json import json_normalize
  8. from shapely.geometry import Polygon, Point
  9.  
  10. def index(request):
  11.  
  12.     configParser = configparser.RawConfigParser()
  13.     configFilePath = r'config.ini'
  14.     configParser.read(configFilePath)
  15.  
  16.     bbdd_name = configParser.get('bbdd-config', 'bbdd')
  17.  
  18.     cluster = Cluster(
  19.         contact_points=['127.0.0.1'],
  20.         auth_provider = PlainTextAuthProvider(username='cassandra', password='cassandra')
  21.     )
  22.     session = cluster.connect()
  23.     session.set_keyspace(bbdd_name)
  24.  
  25.     session.default_fetch_size = 10000000
  26.  
  27.     rows = session.execute("""select * from bbt_monitors""")
  28.  
  29.     try:
  30.  
  31.         rs = list(rows)
  32.  
  33.         df = pd.DataFrame(rs)
  34.  
  35.         df = df.loc[df.groupby('name').date_timestamp.idxmax(),:]
  36.  
  37.         polygon1_list = [(41.819039, 1.980684), (41.819107, 1.980647), (41.81913, 1.980722), (41.819069, 1.980772)]
  38.         polygon2_list = [(41.819234, 1.980722), (41.819194, 1.980742), (41.819229, 1.980856), (41.819266, 1.980824)]
  39.  
  40.         df["polygon1"] = df.apply(lambda row: Polygon(polygon1_list).contains(Point(row["lat"], row["lng"])), axis = 1)
  41.         df["polygon2"] = df.apply(lambda row: Polygon(polygon2_list).contains(Point(row["lat"], row["lng"])), axis = 1)
  42.  
  43.         return HttpResponse(df.to_html())
  44.  
  45.     except Exception:
  46.         return HttpResponse("<H1>NO VALUES</H1>")              
  47.  
  48.     #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