Skip to content

Commit 5c6bda7

Browse files
Fix select annotations, add test
1 parent 148959e commit 5c6bda7

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

Orange/widgets/visualize/tests/test_owprojectionwidget.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,9 @@ def get_embedding(self):
126126
return None
127127

128128
x_data[x_data == np.inf] = np.nan
129-
x_data = np.nanmean(x_data[self.valid_data], 1)
129+
x_data_ = np.ones(len(x_data))
130130
y_data = np.ones(len(x_data))
131-
return np.vstack((x_data, y_data)).T
131+
return np.vstack((x_data_, y_data)).T
132132

133133

134134
class TestOWDataProjectionWidget(WidgetTest, ProjectionWidgetTestMixin,
@@ -145,6 +145,15 @@ def setUpClass(cls):
145145
def setUp(self):
146146
self.widget = self.create_widget(TestableDataProjectionWidget)
147147

148+
def test_annotation_with_nans(self):
149+
data = Table.from_table_rows(self.data, [0, 1, 2])
150+
data.X[1, :] = np.nan
151+
self.send_signal(self.widget.Inputs.data, data)
152+
points = self.widget.graph.scatterplot_item.points()
153+
self.widget.graph.select_by_click(None, [points[1]])
154+
annotated = self.get_output(self.widget.Outputs.annotated_data)
155+
np.testing.assert_equal(annotated.get_column_view('Selected')[0], np.array([0, 0, 1]))
156+
148157
def test_saved_selection(self):
149158
self.send_signal(self.widget.Inputs.data, self.data)
150159
self.widget.graph.select_by_indices(list(range(0, len(self.data), 10)))

Orange/widgets/visualize/utils/widget.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -601,7 +601,7 @@ def _get_annotated_data(data, selection, group_sel, graph_sel):
601601
if graph_sel is not None and np.max(graph_sel) > 1:
602602
return create_groups_table(data, group_sel)
603603
else:
604-
return create_annotated_table(data, selection)
604+
return create_annotated_table(data, np.nonzero(group_sel)[0])
605605

606606
# Report
607607
def send_report(self):

0 commit comments

Comments
 (0)