Though not specified, map_variable assumes the axes are orthogonal. There is a code block that spells this out:
|
for v in self.variables: |
|
if wt_kit.orthogonal(v.shape, variable.shape): |
|
out.create_variable(values=v[:], **v.attrs) |
|
out.transform(*self.axis_expressions) |
More thought is needed to determine if this requirement is necessary, or whether minor changes could relieve this requirement.
The first thing to do to approach this issue is properly document the scope of map_variable so that users have clear expectations for what to work with. We could also include some error handling to better inform the user on what goes wrong when data has the incompatible axes.
Secondly, we should consider if we can make map_variable more general wrt the axes it works with.
Though not specified,
map_variableassumes the axes are orthogonal. There is a code block that spells this out:WrightTools/WrightTools/data/_data.py
Lines 1269 to 1272 in 973a5cc
More thought is needed to determine if this requirement is necessary, or whether minor changes could relieve this requirement.
The first thing to do to approach this issue is properly document the scope of map_variable so that users have clear expectations for what to work with. We could also include some error handling to better inform the user on what goes wrong when data has the incompatible axes.
Secondly, we should consider if we can make map_variable more general wrt the axes it works with.