Mercurial Hosting > traffic-intelligence
annotate python/pavement.py @ 431:0bcfa49d179a
began module for pavement marking data processing
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Wed, 27 Nov 2013 03:22:01 -0500 |
parents | |
children | 4970fa64f636 |
rev | line source |
---|---|
431
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
1 #! /usr/bin/env python |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
2 '''Tools for processing and analyzing pavement marking data''' |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
3 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
4 __metaclass__ = type |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
5 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
6 class RTSS: |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
7 'class for data related to a RTSS, including agregating pavement marking measurements' |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
8 pass |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
9 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
10 class MarkingTest: |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
11 '''class for a test site for a given product''' |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
12 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
13 def __init__(self, siteId, paintingDate, paintingType, color, data): |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
14 self.siteId = siteId |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
15 self.paintingDate = paintingDate |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
16 self.paintingType = paintingType |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
17 self.color = color |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
18 self.data = data |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
19 self.nMeasures = len(data) |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
20 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
21 def plot(self, measure, dayRatio = 1.): |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
22 from matplotlib.pyplot import plot |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
23 plot(self.data['jours']/float(dayRatio), |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
24 self.data[measure]) |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
25 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
26 def plotRetroreflectivity(self, dayRatio = 1.): |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
27 for i in range(1,7): |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
28 self.plot('retro_{}'.format(i), dayRatio) |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
29 |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
30 def plotDurability(self, dayRatio = 1.): |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
31 for i in range(1,7): |
0bcfa49d179a
began module for pavement marking data processing
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
32 self.plot('dur_{}'.format(i), dayRatio) |