Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [january-dev] Typed datasets in January

AxesMetadata is itself part of January:
https://github.com/eclipse/january/blob/383efd6d7cd1f9029432a1aea16ea5fa89ed4398/org.eclipse.january/src/org/eclipse/january/metadata/AxesMetadata.java


~~~
Jonah Graham
Kichwa Coders Ltd.
www.kichwacoders.com


On 31 January 2017 at 09:24, Ian Mayo <ian@xxxxxxxxxxxxx> wrote:
> Hi there Jake,
> that sounds like the Axis concept Mark referred to.   I don't suppose
> you can point to an online example of it in use?  Is there one in the
> DAWN repo?
>
> I can't find the AxesMetadata class in the DawnSci repo [1].
>
> Cheers,
> Ian
>
> [1]. https://github.com/DawnScience/dawnsci
>
>
>> Date: Mon, 30 Jan 2017 15:34:19 +0000
>> From: <Jacob.Filik@xxxxxxxxxxxxx>
>> To: <january-dev@xxxxxxxxxxx>
>> Subject: Re: [january-dev] Typed datasets in January
>> Message-ID: <91595EF9DACB9843AA623AB59EE84318A04F1AA0@exchmbx01>
>> Content-Type: text/plain; charset=iso-8859-1
>>
>> Hi all,
>>
>> I'm another developer here at Diamond with Peter and Matt, I use January pretty heavily and am interested in the UoM and "datasets that only have meaning with other datasets".
>>
>> One feature I use pretty heavily is the Metadata interface.
>>
>> All IDatasets can carry Metadata, which might be axes (time, energy...), units, masks... anything that gives the data meaning beyond being just an NDarray.
>>
>> What makes this interface really useful is the @Sliceable annotation, which can be used to mark datasets in the metadata to be sliced when the main dataset is sliced. A lot of the data processing we do with January involves taking a very large ILazyDataset, backed by HDF5 or a stack of Tiff files, setting axes on the different dimensions of the dataset, then iterating through slices of the data. The @Sliceable metadata slices the metadata datasets to the correct size during the slicing of the main dataset, saving the large amounts of code we used to have to write to do this manually.
>>
>> I'm not sure if this is useful for your case, but if you took the altitude dataset, made an AxesMetadata object, inserted pressure, temperature etc as datasets in the AxesMetadata then set this in the altitude dataset, every slice you took from altitude would have the corresponding pressure and temperature values in.
>>
>> For units we have a very simple UnitMetadata object that allows us to associate units with a dataset (but not do much more). This is in DawnSci rather than January because it has extra dependencies, but it would be nice to improve the functionality of this area.
>>
>> Thanks,
>>
>> Jake
>>
> _______________________________________________
> january-dev mailing list
> january-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://dev.eclipse.org/mailman/listinfo/january-dev


Back to the top