def graphIt():
    areas = db_access.get_all_areas()
    placesList = []
    theAvgMeasurements = []

    for a in areas:
        placesList.append(a['name'])
        theAvg = db_utility.get_average_measurements_for_area(a['area_id'])
        if not theAvg:
            theAvg = 0
        theAvgMeasurements.append(theAvg)

    print(theAvgMeasurements)
    values = tuple(theAvgMeasurements)
    ind = na.array(range(len(values))) + 0.5
    width = 0.35
    plt.bar(ind, values, width, color='r')
    plt.ylabel('Average Measurement')
    plt.title('Areas')

    plt.xticks(ind + width / 2, tuple(placesList))
    plt.show()
Example #2
0
 def testAverageMeasurementMissing(self):
     avg = db_utility.get_average_measurements_for_area(7)
     self.assertEqual(None, avg)
Example #3
0
 def testAverageMeasurement(self):
     avg = db_utility.get_average_measurements_for_area(3)
     self.assertAlmostEqual(61.77813528637446, avg, delta=1e-10)
 def testAverageMeasurement(self):
     avg = db_utility.get_average_measurements_for_area(3)
     self.assertAlmostEqual(61.77813528637446, avg, delta=1e-10)
 def testAverageMeasurementMissing(self):
     avg = db_utility.get_average_measurements_for_area(7)
     self.assertEqual(None, avg)
Example #6
0
def average_measurements(area_id):
    response.content_type = "application/json"
    data = get_average_measurements_for_area(area_id)
    return dumps(data)
Example #7
0
# Chart formatting
space = 18
line_format = ' {:>4}   {:<25}   {:<10}  {:^12}  {:' + str(space + 1) + '} '
divider_line1 = '-' * (84)
divider_line3 = '-' * 82
line_format2 = ' {:^' + str(60 + space) + '} '

# Print Chart
# Print header
print("\n" + divider_line1)
print(divider_line1)
print(line_format.format("ID", "Name", "Num Loc", "Avg Value", "Categories"))
print(divider_line3)

# Print information
for i in db_access.get_all_areas():
    avg = db_utility.get_average_measurements_for_area(
        i[0])  # Calculate average
    print(
        line_format.format(
            str(i[0]),
            i[1],
            str(db_utility.number_of_locations_by_area(
                i[0])),  # areaId, name, num of locations
            "-----" if avg is None else str(round(
                avg, 2)),  # avg measurement, round 2 decimals
            str(", ".join(
                str(j[1]) for j in db_access.get_categories_for_area(
                    i[0])))))  # categories
Example #8
0
import db_access
import db_utility

categories = ''
my_tuple_report = []
my_tuple = db_access.get_all_areas()
template = "{:>3}  {:<25}  {:>10}  {:>25}     {:<30}"
line = template.format('ID', 'Name', "Num Loc", "Avg Value", 'Categories')
print(line)
for area_row in my_tuple:
    #print(area_row)
    categories = ''
    area_id = area_row[0]
    area_name = area_row[1]
    loc_num = db_utility.number_of_locations_by_area(area_id)
    avg_value = db_utility.get_average_measurements_for_area(area_id)
    if avg_value is None:
        avg_value = "        _________________"
    my_categories = db_access.get_categories_for_area(area_id)
    #print(my_categories)
    for category_row in my_categories:
        categories = categories + category_row + ', '
    if categories is None:
        pass
    else:
        categories = categories.rstrip(', ')
    template = "{:3}  {:25}  {:10}  {:25.4}     {:30}"
    line2 = template.format(area_id, area_name, loc_num, avg_value, categories)
    print(line2)
    categoryString = ''
    theCategory = []

    try:
        for i in aList:
           theCategory.append(i['name'])
        countString = len(area_category)

        for i in theCategory:
            categoryString += i
            if countString > 1:
                 categoryString += ', '
                 countString += -1
    except TypeError:
        categoryString = ''
    return categoryString

# ------------------------------------| Pretty Print |----------------------------------------------
for area in areas:
    area_id = area['area_id']
    area_location = db_access.get_locations_for_area(area_id)
    area_category = db_access.get_categories_for_area(area_id)
    avgMeasurementString = str( db_utility.get_average_measurements_for_area(area_id))

    if not db_utility.get_average_measurements_for_area(area_id):
        avgMeasurementString = '--------'

    # Final output
    row = template.format(area_id, area['name'], len(area_location), avgMeasurementString,getCategoryString(area_category))

    print(row)
Example #10
0
                </div>
            </div>""")

a = get_all_areas()
category = ""
num = 1

#table space for database entries:
print("""<div id="page_body2">Table of Areas</br><table class=\"grid\"><th class=\"grid\">ID</th><th class=\"grid\">Name</th>
<th class=\"grid\">Number of Locations</th><th class=\"grid\">Average Value</th>
<th class=\"grid\">Categories</th>""")

for x in a:

    b = number_of_locations_by_area(num)
    c = get_average_measurements_for_area(num)
    d = get_categories_for_area(num)
    spec1 = (27-(len(x['name'])+2))

    if not d: #if categories returns none
        category = ""
    else: #if categories returns a list
        for C in d:
            category += C['name']+" "
    if not c:
        total = "{0:} {1:} {2:>"+str(spec1)+"} {3:>19} {4:>7}"
        cc = "----------"
        # print(total.format(num, x['name'], b, cc, category))r
        print("<tr><td>" + str(num) + "</td><td>" + x['name'] + "</td><td>" + str(b) + "</td><td>" + str(cc) + "</td><td>" + category + "</td></tr>")
    else:
        # nString = str(num)