diff --git a/src/msspec/iodata.py b/src/msspec/iodata.py index 8a4771b..a5f430a 100644 --- a/src/msspec/iodata.py +++ b/src/msspec/iodata.py @@ -17,7 +17,7 @@ # along with this msspec. If not, see . # # Source file : src/msspec/iodata.py -# Last modified: Wed, 18 Jun 2025 11:46:41 +0200 +# Last modified: Wed, 18 Jun 2025 13:30:09 +0200 # Committed by : Sylvain Tricot @@ -70,8 +70,7 @@ Here is an example of how to store values in a Data object: import os import sys -from distutils.version import LooseVersion -from distutils.version import StrictVersion +from looseversion import LooseVersion from io import StringIO from datetime import datetime @@ -80,9 +79,7 @@ from ase.io.extxyz import read_xyz, write_xyz import h5py import numpy as np from lxml import etree -#from matplotlib.backends.backend_wxagg import FigureCanvasWx as FigureCanvas from matplotlib.backends.backend_agg import FigureCanvasAgg -#from matplotlib.backends.backend_cairo import FigureCanvasCairo as FigureCanvasAgg from matplotlib.figure import Figure from matplotlib import pyplot as plt from terminaltables import AsciiTable @@ -513,9 +510,7 @@ class DataSet(object): if isinstance(value, t): fmt = f break - #fd.write(' ') fd.write(fmt.format(value)) - #fd.write(str(value) + ', ') fd.write('\n') def __getitem__(self, itemspec): @@ -560,7 +555,6 @@ class DataSet(object): def __len__(self): try: - #length = len(self._col_arrays[0]) length = 0 for array in self._col_arrays: length = max(length, len(array)) @@ -953,7 +947,6 @@ class _DataSetView(object): axes.set_yticklabels(theta_ticks) cbar = figure.colorbar(im) - #im.set_clim(0, 0.0275) elif proj == 'polar': values[0] = np.radians(values[0]) @@ -1003,7 +996,6 @@ class _DataSetView(object): root = etree.Element('view', name=self.title) for key, value in list(plotopts.items()): root.attrib[key] = str(value) - #root.attrib['dataset_name'] = self.dataset.title for tags, cond, legend in zip(self._selection_tags, self._selection_conditions, @@ -1021,21 +1013,12 @@ class _DataSetView(object): def from_xml(self, xmlstr): root = etree.fromstring(xmlstr) self.title = root.attrib['name'] - #self._plotopts['title'] = root.attrib['title'] - #self._plotopts['xlabel'] = root.attrib['xlabel'] - # self._plotopts['ylabel'] = root.attrib['ylabel'] - # self._plotopts['grid'] = bool(root.attrib['grid']) - # self._plotopts['colorbar'] = bool(root.attrib['colorbar']) - # self._plotopts['projection'] = root.attrib['projection'] - # self._plotopts['marker'] = root.attrib['marker'] for key in list(self._plotopts.keys()): try: self._plotopts[key] = eval(root.attrib.get(key)) except: self._plotopts[key] = root.attrib.get(key) - - legends = [] conditions = [] tags = [] @@ -1095,8 +1078,6 @@ if has_gui: if is_hidden == "True": continue group = datatree.get(p['group'], []) - #strval = str(p['value'] * p['unit'] if p['unit'] else p['value']) - #group.append("{:s} = {:s}".format(p['name'], strval)) group.append("{} = {} {}".format(p['name'], p['value'], p['unit'])) datatree[p['group']] = group @@ -1138,7 +1119,6 @@ if has_gui: # Add the notebook to hold all graphs self.notebooks = {} sizer = wx.BoxSizer(wx.VERTICAL) - #sizer.Add(self.notebook) self.SetSizer(sizer) self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED, self.on_page_changed) @@ -1155,7 +1135,6 @@ if has_gui: for dset in self.data: nb = wx.Notebook(self, -1) self.notebooks[dset.title] = nb - #self.GetSizer().Add(nb, 1, wx.ALL|wx.EXPAND) self.GetSizer().Add(nb, proportion=1, flag=wx.ALL|wx.EXPAND) for view in dset.get_views(): self.create_page(nb, view) @@ -1291,13 +1270,6 @@ if has_gui: cluster_viewer = ClusterViewer(win, size=wx.Size(480, 340)) dset = self.data[self._current_dset] - #s = StringIO() - #s.write(dset.get_parameter(group='Cluster', name='cluster')['value']) - #_s = dset.get_parameter(group='Cluster', name='cluster')['value'] - #print(_s) - # rewind to the begining of the string - #s.seek(0) - #atoms = ase.io.read(s, format='xyz') atoms = dset.get_cluster() cluster_viewer.set_atoms(atoms, rescale=True, center=True) cluster_viewer.rotate_atoms(0., 180.) @@ -1405,41 +1377,7 @@ if has_gui: - - - - - - - - if __name__ == "__main__": - if False: - data = Data('all my data') - dset = data.add_dset('Dataset 0') - X = np.arange(0, 20) - Y = X**2 - - dset.add_columns(x=X, y=Y, z=X+2, w=Y**3) - dset.add_parameter(name='truc', group='main', value='3.14', unit='eV') - dset.add_parameter(name='machin', group='main', value='abc', unit='') - - # Z = [0,1] - # - # for z in Z: - # for x, y in zip(X, Y): - # dset.add_row(x=x, y=y, z=z, random=np.random.rand()) - # - # - view = dset.add_view('my view', autoscale=True) - view.select('x', 'y', where="z<10", legend=r"z = 0") - view.select('x', 'y', where="z>10", legend=r"z = 1") - print(dset.get_parameter(group='main')) - constraint = lambda a, b: (a > 10 and a < 15) and b > 0 - indices = list(map(constraint, dset.x, dset.w)) - print(dset.y[indices]) - - #data.view() import sys data = Data.load(sys.argv[1]) data.view() diff --git a/src/pip.freeze b/src/pip.freeze index b418ff4..5e401eb 100644 --- a/src/pip.freeze +++ b/src/pip.freeze @@ -1,6 +1,7 @@ ase h5py ipython +looseversion lxml matplotlib numpy