diff --git a/q2_feature_table/_summarize/_visualizer.py b/q2_feature_table/_summarize/_visualizer.py index 060633d..e799cb4 100644 --- a/q2_feature_table/_summarize/_visualizer.py +++ b/q2_feature_table/_summarize/_visualizer.py @@ -169,7 +169,8 @@ def summarize(output_dir: str, table: biom.Table, sample_frequencies.sort_values(inplace=True, ascending=False) sample_frequencies_json = pd.Series(["{:,}".format(int(x)) for x in - sample_frequencies]) + sample_frequencies], + index=sample_frequencies.index) feature_frequencies.sort_values(inplace=True, ascending=False) diff --git a/q2_feature_table/tests/test_summarize.py b/q2_feature_table/tests/test_summarize.py index ab11d4a..fbae99d 100644 --- a/q2_feature_table/tests/test_summarize.py +++ b/q2_feature_table/tests/test_summarize.py @@ -9,6 +9,8 @@ import os from unittest import TestCase, main import tempfile +import re +import json import skbio import biom @@ -383,6 +385,24 @@ def test_basic(self): index_fp = os.path.join(output_dir, 'index.html') self.assertTrue(os.path.exists(index_fp)) + sample_frequency_fp = os.path.join(output_dir, + 'sample-frequency-detail.html') + self.assertTrue(os.path.exists(sample_frequency_fp)) + + rx = (r'') + + with open(sample_frequency_fp) as fi: + text = fi.read() + tbl_rx = re.compile(rx) + tbl = tbl_rx.findall(text)[0].split('\n')[1].strip() + + sample_ids = json.loads(tbl).keys() + + self.assertTrue('S1' in sample_ids) + self.assertTrue('S2' in sample_ids) + self.assertTrue('S3' in sample_ids) + def test_frequency_ranges_are_zero(self): table = biom.Table(np.array([[25, 25, 25], [25, 25, 25]]), ['O1', 'O2'],