def get_coord(coord_fname, method="IQR"): """Opens and returns coords location matrix and metadata. Also two spread matrices (+/-) if passed a dir of coord files. If only a single coord file, spread matrices are returned as None. """ if not os.path.isdir(coord_fname): try: coord_f = open(coord_fname, 'U') except (TypeError, IOError): raise MissingFileError('Coord file required for this analysis') coord_header, coords, eigvals, pct_var = parse_coords(coord_f) return [coord_header, coords, eigvals, pct_var, None, None] else: master_pcoa, support_pcoas = load_pcoa_files(coord_fname) # get Summary statistics coords, coords_low, coords_high, eigval_average, coord_header = \ summarize_pcoas(master_pcoa, support_pcoas, method=method) pct_var = master_pcoa[3] # should be getting this from an average # make_3d_plots expects coord_header to be a python list coord_header = list(master_pcoa[0]) return ( [coord_header, coords, eigval_average, pct_var, coords_low, coords_high] )
def get_coord(coord_fname, method="IQR"): """Opens and returns coords location matrix and metadata. Also two spread matrices (+/-) if passed a dir of coord files. If only a single coord file, spread matrices are returned as None. """ if not os.path.isdir(coord_fname): try: coord_f = open(coord_fname, 'U').readlines() except (TypeError, IOError): raise MissingFileError, 'Coord file required for this analysis' coord_header, coords, eigvals, pct_var = parse_coords(coord_f) return [coord_header, coords, eigvals, pct_var, None, None] else: master_pcoa, support_pcoas = load_pcoa_files(coord_fname) # get Summary statistics coords, coords_low, coords_high, eigval_average, coord_header = \ summarize_pcoas(master_pcoa,support_pcoas, method=method) pct_var = master_pcoa[3] # should be getting this from an average # make_3d_plots expects coord_header to be a python list coord_header = list(master_pcoa[0]) return [ coord_header, coords, eigval_average, pct_var, coords_low, coords_high ]
def main(): option_parser, opts, args = parse_command_line_parameters(**script_info) data = {} prefs,data,background_color,label_color,ball_scale, arrow_colors= \ sample_color_prefs_and_map_data_from_options(opts) data['ellipsoid_method'] = opts.ellipsoid_method if 0.00 <= opts.ellipsoid_opacity <= 1.00: data['alpha'] = opts.ellipsoid_opacity else: raise ValueError, 'The opacity must be a value between 0 and 1!' #Open and get coord data if os.path.isdir(opts.coord_fname) and opts.master_pcoa: data['coord'], data['support_pcoas'] = load_pcoa_files( opts.coord_fname) data['coord'] = get_coord(opts.master_pcoa) elif os.path.isdir(opts.coord_fname): data['coord'], data['support_pcoas'] = load_pcoa_files( opts.coord_fname) else: data['coord'] = get_coord(opts.coord_fname) filepath = opts.coord_fname basename, extension = os.path.splitext(filepath) filename = '%s_2D_PCoA_plots' % (basename) qiime_dir = get_qiime_project_dir() js_path = os.path.join(qiime_dir, 'qiime', 'support_files', 'js') if opts.output_dir: if os.path.exists(opts.output_dir): dir_path = opts.output_dir else: try: os.mkdir(opts.output_dir) dir_path = opts.output_dir except OSError: pass else: dir_path = './' html_dir_path = dir_path data_dir_path = get_random_directory_name(output_dir=dir_path) try: os.mkdir(data_dir_path) except OSError: pass js_dir_path = os.path.join(html_dir_path, 'js') try: os.mkdir(js_dir_path) except OSError: pass shutil.copyfile(os.path.join(js_path,'overlib.js'), \ os.path.join(js_dir_path,'overlib.js')) try: action = generate_2d_plots except NameError: action = None #Place this outside try/except so we don't mask NameError in action if action: action(prefs, data, html_dir_path, data_dir_path, filename, background_color, label_color, opts.scree)
def main(): option_parser, opts, args = parse_command_line_parameters(**script_info) matplotlib_version = re.split("[^\d]", matplotlib.__version__) matplotlib_version_info = tuple([int(i) for i in matplotlib_version if \ i.isdigit()]) if matplotlib_version_info != (1,1,0): print "This code was only tested with Matplotlib-1.1.0" data = {} prefs,data,background_color,label_color,ball_scale, arrow_colors= \ sample_color_prefs_and_map_data_from_options(opts) data['ellipsoid_method']=opts.ellipsoid_method if 0.00 <= opts.ellipsoid_opacity <= 1.00: data['alpha']=opts.ellipsoid_opacity else: raise ValueError, 'The opacity must be a value between 0 and 1!' #Open and get coord data if os.path.isdir(opts.coord_fname) and opts.master_pcoa: data['coord'],data['support_pcoas'] = load_pcoa_files(opts.coord_fname) data['coord']=get_coord(opts.master_pcoa) elif os.path.isdir(opts.coord_fname): data['coord'],data['support_pcoas'] = load_pcoa_files(opts.coord_fname) else: data['coord'] = get_coord(opts.coord_fname) filepath=opts.coord_fname basename,extension=os.path.splitext(filepath) filename='%s_2D_PCoA_plots' % (basename) qiime_dir=get_qiime_project_dir() js_path=os.path.join(qiime_dir,'qiime','support_files','js') if opts.output_dir: if os.path.exists(opts.output_dir): dir_path=opts.output_dir else: try: os.mkdir(opts.output_dir) dir_path=opts.output_dir except OSError: pass else: dir_path='./' html_dir_path=dir_path data_dir_path = get_random_directory_name(output_dir=dir_path) try: os.mkdir(data_dir_path) except OSError: pass js_dir_path = os.path.join(html_dir_path,'js') try: os.mkdir(js_dir_path) except OSError: pass shutil.copyfile(os.path.join(js_path,'overlib.js'), \ os.path.join(js_dir_path,'overlib.js')) try: action = generate_2d_plots except NameError: action = None #Place this outside try/except so we don't mask NameError in action if action: action(prefs,data,html_dir_path,data_dir_path,filename,background_color, label_color,opts.scree)
def main(): option_parser, opts, args = parse_command_line_parameters(**script_info) data = {} prefs, data, background_color, label_color, ball_scale, arrow_colors = sample_color_prefs_and_map_data_from_options( opts ) data["ellipsoid_method"] = opts.ellipsoid_method if 0.00 <= opts.ellipsoid_opacity <= 1.00: data["alpha"] = opts.ellipsoid_opacity else: raise ValueError("The opacity must be a value between 0 and 1!") # Open and get coord data if os.path.isdir(opts.coord_fname) and opts.master_pcoa: data["coord"], data["support_pcoas"] = load_pcoa_files(opts.coord_fname) data["coord"] = get_coord(opts.master_pcoa) elif os.path.isdir(opts.coord_fname): data["coord"], data["support_pcoas"] = load_pcoa_files(opts.coord_fname) else: data["coord"] = get_coord(opts.coord_fname) filepath = opts.coord_fname basename, extension = os.path.splitext(filepath) filename = "%s_2D_PCoA_plots" % (basename) # obtaining where the files live so they can be copied qiime_dir = get_qiime_project_dir() js_path = os.path.join(qiime_dir, "qiime", "support_files", "js") if opts.output_dir: if os.path.exists(opts.output_dir): dir_path = opts.output_dir else: try: os.mkdir(opts.output_dir) dir_path = opts.output_dir except OSError: pass else: dir_path = "./" html_dir_path = dir_path data_dir_path = mkdtemp(dir=dir_path) try: os.mkdir(data_dir_path) except OSError: pass js_dir_path = os.path.join(html_dir_path, "js") try: os.mkdir(js_dir_path) except OSError: pass shutil.copyfile(os.path.join(js_path, "overlib.js"), os.path.join(js_dir_path, "overlib.js")) try: action = generate_2d_plots except NameError: action = None # Place this outside try/except so we don't mask NameError in action if action: action( prefs, data, html_dir_path, data_dir_path, filename, background_color, label_color, opts.scree, opts.pct_variation_below_one, )