Skip to content

Commit de361b1

Browse files
committed
Add parents in HTML representation and always print class name
1 parent dd0c6d3 commit de361b1

1 file changed

Lines changed: 15 additions & 5 deletions

File tree

src/spikeinterface/core/baserecording.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ def list_to_string(lst, max_size=6):
8989

9090
return txt
9191

92-
def _repr_header(self):
92+
def _repr_header(self, display_name=True):
9393
num_segments = self.get_num_segments()
9494
num_channels = self.get_num_channels()
9595
dtype = self.get_dtype()
@@ -105,8 +105,13 @@ def _repr_header(self):
105105
# Khz for high sampling rate and Hz for LFP
106106
sampling_frequency_repr = f"{(sf_hz/1000.0):0.1f}kHz" if sf_hz > 10_000.0 else f"{sf_hz:0.1f}Hz"
107107

108+
if display_name:
109+
name = f"{self.name} ({self.__class__.__name__})"
110+
else:
111+
name = self.__class__.__name__
112+
108113
txt = (
109-
f"{self.name}: "
114+
f"{name}: "
110115
f"{num_channels} channels - "
111116
f"{sampling_frequency_repr} - "
112117
f"{num_segments} segments - "
@@ -118,11 +123,11 @@ def _repr_header(self):
118123

119124
return txt
120125

121-
def _repr_html_(self):
126+
def _repr_html_(self, display_name=True):
122127
common_style = "margin-left: 10px;"
123128
border_style = "border:1px solid #ddd; padding:10px;"
124129

125-
html_header = f"<div style='{border_style}'><strong>{self._repr_header()}</strong></div>"
130+
html_header = f"<div style='{border_style}'><strong>{self._repr_header(display_name)}</strong></div>"
126131

127132
html_segments = ""
128133
if self.get_num_segments() > 1:
@@ -154,8 +159,13 @@ def _repr_html_(self):
154159
value_formatted = np.asarray(value)
155160
html_properties += f"<details><summary> <strong> {key} </strong> </summary>{value_formatted}</details>"
156161
html_properties += "</ul></details>"
162+
if self.get_parent():
163+
html_parent = f"<details style='{common_style}'> <summary><strong>Parent</strong></summary>"
164+
html_parent += self.get_parent()._repr_html_(display_name=False)
165+
else:
166+
html_parent = ""
157167

158-
html_repr = html_header + html_segments + html_channel_ids + html_annotations + html_properties
168+
html_repr = html_header + html_segments + html_channel_ids + html_annotations + html_properties + html_parent
159169
return html_repr
160170

161171
def get_num_segments(self) -> int:

0 commit comments

Comments
 (0)