def show_html(self, filepath='SWEETVIZ_REPORT.html', open_browser=True, layout='widescreen', scale=None): scale = float(self.use_config_if_none(scale, "html_scale")) layout = self.use_config_if_none(layout, "html_layout") if layout not in ['widescreen', 'vertical']: raise ValueError(f"'layout' parameter must be either 'widescreen' or 'vertical'") sv_html.load_layout_globals_from_config() self.page_layout = layout self.scale = scale sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) if self.associations_html_source: self.associations_html_source = sv_html.generate_html_associations(self, "source") if self.associations_html_compare: self.associations_html_compare = sv_html.generate_html_associations(self, "compare") self._page_html = sv_html.generate_html_dataframe_page(self) f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() if open_browser: print(f"Report {filepath} was generated! NOTEBOOK/COLAB USERS: the web browser MAY not pop up, regardless, the report IS saved in your notebook/colab files.") # Not sure how to work around this: not fatal but annoying...Notebook/colab # https://bugs.python.org/issue5993 webbrowser.open('file://' + os.path.realpath(filepath)) else: print(f"Report {filepath} was generated.")
def show_html(self, filepath='SWEETVIZ_REPORT.html', layout='widescreen', onWeb=True, saveFile=False): sv_html.load_layout_globals_from_config() self.page_layout = layout sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) self._page_html = sv_html.generate_html_dataframe_page(self) # self.temp_folder = config["Files"].get("temp_folder") # os.makedirs(os.path.normpath(self.temp_folder), exist_ok=True) if saveFile: f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() print( f"Report {filepath} was generated! NOTEBOOK/COLAB USERS: no browser will pop up, the report is saved in your notebook/colab files." ) # Not sure how to work around this: not fatal but annoying...Notebook/colab # https://bugs.python.org/issue5993 if onWeb: webbrowser.open('file://' + os.path.realpath(filepath)) return self._page_html
def show_notebook(self, w=None, h=None, scale=None, layout=None, filepath=None): w = self.use_config_if_none(w, "notebook_width") h = self.use_config_if_none(h, "notebook_height") scale = float(self.use_config_if_none(scale, "notebook_scale")) layout = self.use_config_if_none(layout, "notebook_layout") if layout not in ['widescreen', 'vertical']: raise ValueError( f"'layout' parameter must be either 'widescreen' or 'vertical'" ) sv_html.load_layout_globals_from_config() self.page_layout = layout self.scale = scale sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) if self.associations_html_source: self.associations_html_source = sv_html.generate_html_associations( self, "source") if self.associations_html_compare: self.associations_html_compare = sv_html.generate_html_associations( self, "compare") self._page_html = sv_html.generate_html_dataframe_page(self) width = w height = h if str(height).lower() == "full": height = self.page_height # Output to iFrame import html self._page_html = html.escape(self._page_html) iframe = f' <iframe width="{width}" height="{height}" srcdoc="{self._page_html}" frameborder="0" allowfullscreen></iframe>' from IPython.core.display import display from IPython.core.display import HTML display(HTML(iframe)) if filepath is not None: f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() print(f"Report '{filepath}' was saved to storage.") if len(self.corr_warning): print( "WARNING: one or more correlations had an edge-case/error and a 1.0 correlation was assigned\n" "(likely due to only a single row containing non-NaN values for both correlated features)\n" "Affected correlations:" + str(self.corr_warning)) # Auto-log to comet_ml if desired & present self._comet_ml_logger = comet_ml_logger.CometLogger() if self._comet_ml_logger._logging: self.generate_comet_friendly_html() self._comet_ml_logger.log_html(self._page_html) self._comet_ml_logger.end()
def generate_comet_friendly_html(self): # Enforce comet_ml-friendly layout and re-output report based on INI settings (comet_ml_Defaults) self.page_layout = config["comet_ml_defaults"]["html_layout"] self.scale = float(config["comet_ml_defaults"]["html_scale"]) sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) if self.associations_html_source: self.associations_html_source = sv_html.generate_html_associations( self, "source") if self.associations_html_compare: self.associations_html_compare = sv_html.generate_html_associations( self, "compare") self._page_html = sv_html.generate_html_dataframe_page(self)
def show_html(self, filepath='SWEETVIZ_REPORT.html', open_browser=True, layout='widescreen', scale=None): scale = float(self.use_config_if_none(scale, "html_scale")) layout = self.use_config_if_none(layout, "html_layout") if layout not in ['widescreen', 'vertical']: raise ValueError( f"'layout' parameter must be either 'widescreen' or 'vertical'" ) sv_html.load_layout_globals_from_config() self.page_layout = layout self.scale = scale sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) if self.associations_html_source: self.associations_html_source = sv_html.generate_html_associations( self, "source") if self.associations_html_compare: self.associations_html_compare = sv_html.generate_html_associations( self, "compare") self._page_html = sv_html.generate_html_dataframe_page(self) f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() if open_browser: print( f"Report {filepath} was generated! NOTEBOOK/COLAB USERS: the web browser MAY not pop up, regardless, the report IS saved in your notebook/colab files." ) # Not sure how to work around this: not fatal but annoying...Notebook/colab # https://bugs.python.org/issue5993 webbrowser.open('file://' + os.path.realpath(filepath)) else: print(f"Report {filepath} was generated.") if len(self.corr_warning): print( "---\nWARNING: one or more correlations had an edge-case/error and a 1.0 correlation was assigned\n" "(likely due to only a single row containing non-NaN values for both correlated features)\n" "Affected correlations:" + str(self.corr_warning)) # Auto-log to comet_ml if desired & present self._comet_ml_logger = comet_ml_logger.CometLogger() if self._comet_ml_logger._logging: self.generate_comet_friendly_html() self._comet_ml_logger.log_html(self._page_html) self._comet_ml_logger.end()
def show_html(self, filepath='SWEETVIZ_REPORT.html', layout='widescreen'): sv_html.load_layout_globals_from_config() self.page_layout = layout sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) self._page_html = sv_html.generate_html_dataframe_page(self) # self.temp_folder = config["Files"].get("temp_folder") # os.makedirs(os.path.normpath(self.temp_folder), exist_ok=True) f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() # Not sure how to work around this: not fatal but annoying... # https://bugs.python.org/issue5993 webbrowser.open('file://' + os.path.realpath(filepath))
def show_notebook(self, w=None, h=None, scale=None, layout='widescreen', filepath=None): w = self.use_config_if_none(w, "notebook_width") h = self.use_config_if_none(h, "notebook_height") scale = float(self.use_config_if_none(scale, "notebook_scale")) layout = self.use_config_if_none(layout, "notebook_layout") if layout not in ['widescreen', 'vertical']: raise ValueError( f"'layout' parameter must be either 'widescreen' or 'vertical'" ) sv_html.load_layout_globals_from_config() self.page_layout = layout self.scale = scale sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) if self.associations_html_source: self.associations_html_source = sv_html.generate_html_associations( self, "source") if self.associations_html_compare: self.associations_html_compare = sv_html.generate_html_associations( self, "compare") self._page_html = sv_html.generate_html_dataframe_page(self) width = w height = h if str(height).lower() == "full": height = self.page_height # Output to iFrame import html self._page_html = html.escape(self._page_html) iframe = f' <iframe width="{width}" height="{height}" srcdoc="{self._page_html}" frameborder="0" allowfullscreen></iframe>' from IPython.core.display import display from IPython.core.display import HTML display(HTML(iframe)) if filepath is not None: f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() print(f"Report '{filepath}' was saved to storage.")
def show_html(self, filepath='SWEETVIZ_REPORT.html', open_browser=True, layout='widescreen'): sv_html.load_layout_globals_from_config() self.page_layout = layout sv_html.set_summary_positions(self) sv_html.generate_html_detail(self) self._page_html = sv_html.generate_html_dataframe_page(self) f = open(filepath, 'w', encoding="utf-8") f.write(self._page_html) f.close() if open_browser: print( f"Report {filepath} was generated! NOTEBOOK/COLAB USERS: the web browser MAY not pop up, regardless, the report IS saved in your notebook/colab files." ) # Not sure how to work around this: not fatal but annoying...Notebook/colab # https://bugs.python.org/issue5993 webbrowser.open('file://' + os.path.realpath(filepath)) else: print(f"Report {filepath} was generated!")