annotate tracks/CanvasFeatures.py @ 39:4a69515eed63 draft

planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 91271a6c0d39c923f0d460b2979247baa297286b-dirty
author yating-l
date Fri, 13 Apr 2018 18:21:35 -0400
parents d17f629f5486
children 627cce51523f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
1 #!/usr/bin/env python
38
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
2 import os
25
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
3 import json
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
4 import logging
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
5
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
6 from TrackDb import TrackDb
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
7 from util import subtools
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
8
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
9
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
10 class CanvasFeatures(TrackDb):
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
11 def __init__(self, trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings=None):
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
12 super(CanvasFeatures, self).__init__(trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings)
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
13
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
14 def prepareExtraSetting(self):
38
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
15 if 'category' not in self.extraSettings or not self.extraSettings['category']:
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
16 self.extraSettings['category'] = "Default group"
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
17 self.extraSettings['style'] = {}
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
18 self.extraSettings['style']['className'] = 'feature'
25
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
19 if 'color' not in self.extraSettings or not self.extraSettings['color']:
38
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
20 self.extraSettings['style']['color'] = "#FFA600"
25
31a41ce128cc planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 691e5366893905d30943a3cb8cdfb6341f0f5362-dirty
yating-l
parents:
diff changeset
21 else:
38
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
22 self.extraSettings['style']['color'] = self.extraSettings['color']
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
23 track = dict()
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
24 track['type'] = 'JBrowse/View/Track/' + self.trackType
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
25 track['storeClass'] = 'JBrowse/Store/SeqFeature/GFF3Tabix'
39
4a69515eed63 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 91271a6c0d39c923f0d460b2979247baa297286b-dirty
yating-l
parents: 38
diff changeset
26 if self.dataType == 'gff':
4a69515eed63 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 91271a6c0d39c923f0d460b2979247baa297286b-dirty
yating-l
parents: 38
diff changeset
27 track['urlTemplate'] = os.path.join('tracks', self.trackName + '.gff3.gz')
4a69515eed63 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 91271a6c0d39c923f0d460b2979247baa297286b-dirty
yating-l
parents: 38
diff changeset
28 else:
4a69515eed63 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit 91271a6c0d39c923f0d460b2979247baa297286b-dirty
yating-l
parents: 38
diff changeset
29 track['urlTemplate'] = os.path.join('tracks', self.trackName)
38
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
30 track['label'] = self.trackLabel
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
31 track['category'] = self.extraSettings['category']
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
32 track['style'] = self.extraSettings['style']
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
33 extraConfigs = track
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
34 return extraConfigs
d17f629f5486 planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit e4c1d387db160a3bf4a1e8abc288bdffbbbe2818-dirty
yating-l
parents: 25
diff changeset
35