Python plotly.graph_objs.Table() Examples
The following are 10
code examples of plotly.graph_objs.Table().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
plotly.graph_objs
, or try the search function
.
Example #1
Source File: drawer.py From zvt with MIT License | 6 votes |
def draw_table(self, width=None, height=None, title=None, keep_ui_state=True, **kwargs): cols = self.main_data.data_df.index.names + self.main_data.data_df.columns.tolist() index1 = self.main_data.data_df.index.get_level_values(0).tolist() index2 = self.main_data.data_df.index.get_level_values(1).tolist() values = [index1] + [index2] + [self.main_data.data_df[col] for col in self.main_data.data_df.columns] data = go.Table( header=dict(values=cols, fill_color=['#000080', '#000080'] + ['#0066cc'] * len(self.main_data.data_df.columns), align='left', font=dict(color='white', size=13)), cells=dict(values=values, fill=dict(color='#F5F8FF'), align='left'), **kwargs) fig = go.Figure() fig.add_traces([data]) fig.update_layout(self.gen_plotly_layout(width=width, height=height, title=title, keep_ui_state=keep_ui_state)) fig.show()
Example #2
Source File: f_pump_duration_curve.py From CityEnergyAnalyst with MIT License | 6 votes |
def calc_table(analysis_fields, data_frame): # calculate variables for the analysis loss_peak = data_frame[analysis_fields].max().round(2).tolist() # save maximum value of loss loss_total = (data_frame[analysis_fields].sum() / 1000).round(2).tolist() # save total loss value # calculate graph load_utilization = [] loss_names = [] # data = '' duration = range(HOURS_IN_YEAR) x = [(a - min(duration)) / (max(duration) - min(duration)) * 100 for a in duration] for field in analysis_fields: field_1 = field.split('_')[0] field_2 = field.split('_')[1] field_3 = field_1 + '_' + field_2 data_frame_new = data_frame.sort_values(by=field, ascending=False) y = data_frame_new[field].values load_utilization.append(evaluate_utilization(x, y)) loss_names.append(NAMING[field] + ' (' + field_3 + ')') table = go.Table(domain=dict(x=[0, 1], y=[0.7, 1.0]), header=dict( values=['Name', 'Peak Load [kW]', 'Yearly Demand [MWh]', 'Utilization [-]']), cells=dict(values=[loss_names, loss_peak, loss_total, load_utilization])) return table
Example #3
Source File: load_duration_curve.py From CityEnergyAnalyst with MIT License | 6 votes |
def calc_table(analysis_fields, data_frame): # calculate variables for the analysis load_peak = data_frame[analysis_fields].max().round(2).tolist() load_total = (data_frame[analysis_fields].sum() / 1000).round(2).tolist() # calculate graph load_utilization = [] load_names = [] # data = '' duration = range(HOURS_IN_YEAR) x = [(a - min(duration)) / (max(duration) - min(duration)) * 100 for a in duration] for field in analysis_fields: data_frame_new = data_frame.sort_values(by=field, ascending=False) y = data_frame_new[field].values load_utilization.append(evaluate_utilization(x, y)) load_names.append(NAMING[field] + ' (' + field.split('_', 1)[0] + ')') table = go.Table(domain=dict(x=[0, 1], y=[0.7, 1.0]), header=dict( values=['Load Name', 'Peak Load [kW]', 'Yearly Demand [MWh]', 'Utilization [-]']), cells=dict(values=[load_names, load_peak, load_total, load_utilization])) return table
Example #4
Source File: energy_end_use.py From CityEnergyAnalyst with MIT License | 6 votes |
def calc_table(analysis_fields, data_frame): median = data_frame[analysis_fields].median().round(2).tolist() total = data_frame[analysis_fields].sum().round(2).tolist() total_perc = [str(x) + " (" + str(round(x / sum(total) * 100, 1)) + " %)" for x in total] # calculate graph anchors = [] load_names = [] for field in analysis_fields: anchors.append(calc_top_three_anchor_loads(data_frame, field)) load_names.append(NAMING[field] + ' (' + field.split('_', 1)[0] + ')') table = go.Table(domain=dict(x=[0, 1.0], y=[0, 0.2]), header=dict(values=['Load Name', 'Total [MWh/yr]', 'Median [MWh/yr]', 'Top 3 Consumers']), cells=dict(values=[load_names, total_perc, median, anchors])) return table
Example #5
Source File: energy_balance.py From CityEnergyAnalyst with MIT License | 6 votes |
def calc_table(data_frame_month): """ draws table of monthly energy balance :param data_frame_month: data frame of monthly building energy balance :return: """ # create table arrays name_month = np.append(data_frame_month.index, ['YEAR']) total_heat = np.append(data_frame_month['Q_heat_sum'].values, data_frame_month['Q_heat_sum'].sum()) total_cool = np.append(data_frame_month['Q_cool_sum'], data_frame_month['Q_cool_sum'].sum()) balance = np.append(data_frame_month['Q_balance'], data_frame_month['Q_balance'].sum().round(2)) # draw table table = go.Table(domain=dict(x=[0, 1], y=[0.0, 0.2]), header=dict(values=['Month', 'Total heat [kWh/m2_GFA]', 'Total cool [kWh/m2_GFA]', 'Delta [kWh/m2_GFA]']), cells=dict(values=[name_month, total_heat, total_cool, balance])) return table
Example #6
Source File: graph.py From CHAID with Apache License 2.0 | 5 votes |
def _table(self, node): p = None if node.p is None else format(node.p, ".5f") score = None if node.score is None else format(node.score, ".2f") values = [p, score, node.split.column] return go.Table( cells=dict(values=[TABLE_HEADER, values], **TABLE_CELLS_CONFIG), **TABLE_CONFIG )
Example #7
Source File: comfort_chart.py From CityEnergyAnalyst with MIT License | 5 votes |
def calc_table(dict_graph): """ draws table of monthly energy balance :param dict_graph: dict containing the lists of summer, winter, occupied and unoccupied operative temperatures and \moisture ratios, i.e. the results of comfort_chart.calc_data :type dict_graph: dict :return: plotly table trace :rtype: plotly.graph_objs.Table """ # create table arrays # check winter comfort count_winter_comfort, count_winter_uncomfort = check_comfort(dict_graph['t_op_occupied_winter'], dict_graph['x_int_occupied_winter'], VERTICES_WINTER_COMFORT) winter_hours = len(dict_graph['t_op_occupied_winter']) perc_winter_comfort = count_winter_comfort/winter_hours if winter_hours > 0 else 0 cell_winter_comfort = "{} ({:.0%})".format(count_winter_comfort, perc_winter_comfort) perc_winter_uncomfort = count_winter_uncomfort / winter_hours if winter_hours > 0 else 0 cell_winter_uncomfort = "{} ({:.0%})".format(count_winter_uncomfort, perc_winter_uncomfort) # check summer comfort count_summer_comfort, count_summer_uncomfort = check_comfort(dict_graph['t_op_occupied_summer'], dict_graph['x_int_occupied_summer'], VERTICES_SUMMER_COMFORT) summer_hours = len(dict_graph['t_op_occupied_summer']) perc_summer_comfort = count_summer_comfort / summer_hours if summer_hours > 0 else 0 cell_summer_comfort = "{} ({:.0%})".format(count_summer_comfort, perc_summer_comfort) perc_summer_uncomfort = count_summer_uncomfort / summer_hours if summer_hours > 0 else 0 cell_summer_uncomfort = "{} ({:.0%})".format(count_summer_uncomfort, perc_summer_uncomfort) # draw table table = go.Table(domain=dict(x=[0.0, 1], y=[YAXIS_DOMAIN_GRAPH[1], 1.0]), header=dict(values=['condition', 'comfort [h]', 'uncomfort [h]']), cells=dict(values=[['summer occupied', 'winter occupied'], [cell_summer_comfort, cell_winter_comfort], [cell_summer_uncomfort, cell_winter_uncomfort]]), visible=True) return table
Example #8
Source File: pycoQC_plot.py From pycoQC with GNU General Public License v3.0 | 5 votes |
def __summary_plot (self, width, height, plot_title, header, data_format, data): """Private function generating summary table plots""" self.logger.info ("\t\tComputing plot") # Plot data data = [go.Table( header = { "values":header, "align":"center", "fill":{"color":"grey"}, "font":{"size":14, "color":"white"}, "height":40}, cells = { "values":data, "format": data_format, "align":"center", "fill":{"color":"whitesmoke"}, "font":{"size":12}, "height":30})] # tweak plot layout layout = go.Layout ( width = width, height = height, title = {"text":plot_title, "xref":"paper" ,"x":0.5, "xanchor":"center"}) return go.Figure (data=data, layout=layout) #~~~~~~~1D DISTRIBUTION METHODS AND HELPER~~~~~~~#
Example #9
Source File: pycoQC_plot.py From pycoQC with GNU General Public License v3.0 | 5 votes |
def alignment_reads_status (self, colors:list=["#f44f39","#fc8161","#fcaf94","#828282"], width:int= None, height:int=500, plot_title:str="Summary of reads alignment status"): """ Plot a basic alignment summary * colors List of colors (hex, rgb, rgba, hsl, hsv or any CSS named colors https://www.w3.org/TR/css-color-3/#svg-color * width With of the plotting area in pixel * height height of the plotting area in pixel * plot_title Title to display on top of the plot """ # Verify that alignemnt information are available if not self.has_alignment: raise pycoQCError ("No Alignment information available") self.logger.info ("\t\tComputing plot") df = self.alignments_df # Create empty multiplot figure fig = make_subplots(rows=1, cols=2, column_widths=[0.4, 0.6], specs=[[{"type": "table"},{"type": "pie"}]]) # plot Table data = go.Table( columnwidth = [3,2,2], header = {"values":list(df.columns), "align":"center", "fill_color":"grey", "font_size":14, "font_color":"white", "height":40}, cells = {"values":df.values.T , "align":"center", "fill_color":"whitesmoke", "font_size":12, "height":30}) fig.add_trace (data, row=1, col=1) # plot Pie plot data = go.Pie ( labels=df["Alignments"], values=df["Counts"], sort=False, marker={"colors":colors}, name="Pie plot", textinfo='label+percent') fig.add_trace (data, row=1, col=2) # Change the layout fig.update_layout( width = width, height = height, title = {"text":plot_title, "xref":"paper" ,"x":0.5, "xanchor":"center"}) return fig #~~~~~~~ALIGNMENT RATE METHOD AND HELPER~~~~~~~#
Example #10
Source File: analysis.py From cryodrgn with GNU General Public License v3.0 | 4 votes |
def ipy_plot_interactive(df, opacity=.3): import plotly.graph_objs as go from ipywidgets import interactive if 'labels' in df.columns: text = [f'Class {k}: index {i}' for i,k in zip(df.index, df.labels)] # hovertext else: text = [f'index {i}' for i in df.index] # hovertext xaxis, yaxis = df.columns[0], df.columns[1] f = go.FigureWidget([go.Scattergl(x=df[xaxis], y=df[yaxis], mode='markers', text=text, marker=dict(size=2, opacity=opacity, color=np.arange(len(df)), colorscale='hsv' ))]) scatter = f.data[0] N = len(df) f.update_layout(xaxis_title=xaxis, yaxis_title=yaxis) f.layout.dragmode = 'lasso' def update_axes(xaxis, yaxis, color_by, colorscale): scatter = f.data[0] scatter.x = df[xaxis] scatter.y = df[yaxis] scatter.marker.colorscale = colorscale if colorscale is None: scatter.marker.color = None else: scatter.marker.color = df[color_by] if color_by != 'index' else df.index with f.batch_update(): # what is this for?? f.layout.xaxis.title = xaxis f.layout.yaxis.title = yaxis widget = interactive(update_axes, yaxis=df.select_dtypes('number').columns, xaxis=df.select_dtypes('number').columns, color_by = df.columns, colorscale = [None,'hsv','plotly3','deep','portland','picnic','armyrose']) t = go.FigureWidget([go.Table( header=dict(values=['index']), cells=dict(values=[df.index]), )]) def selection_fn(trace, points, selector): t.data[0].cells.values = [df.loc[points.point_inds].index] scatter.on_selection(selection_fn) return widget, f, t