DeserializedMeasurement¶
-
class
lsst.validate.base.DeserializedMeasurement(quantity=None, id_=None, metric=None, parameters=None, extras=None, linked_blobs=None, spec_name=None, filter_name=None)[source]¶ Bases:
lsst.validate.base.MeasurementBaseMeasurement deserialized from JSON.
For internal use only.
Attributes Summary
blobsdictof blobs attached to this measurement instance.datumRepresentation of this measurement as a Datum.extrasfilter_nameidentifierUnique UUID4-based identifier for this measurement ( str).jsonA dictthat can be serialized as semantic SQUASH JSON.labelName of the Metricassociated with this measurement (str).latex_unitUnits as a LaTeX string, wrapped in $.metricparametersquantityValue of the datum ( astropy.units.Quantity,str,bool,None).spec_nameunitRead-only astropy.units.Unitof thequantity.unit_strRead-only astropy.units.Unit-compatiblestrindicating units ofquantity.Methods Summary
check_spec(name)Check this measurement against a Specificationlevel, of theMetric.from_json(json_data[, blobs_json])Construct a measurement from a JSON dataset. jsonify_dict(d)Recursively build JSON-renderable objects on all values in a dict. register_extra(extra_key[, quantity, unit, ...])Register a measurement extra—a by-product of a metric measurement. register_parameter(param_key[, quantity, ...])Register a measurement input parameter attribute. write_json(filepath)Write JSON to a file. Attributes Documentation
-
extras= None¶
-
filter_name= None¶
-
latex_unit¶ Units as a LaTeX string, wrapped in
$.
-
metric= None¶
-
parameters= None¶
-
quantity¶ Value of the datum (
astropy.units.Quantity,str,bool,None).
-
spec_name= None¶
-
unit¶ Read-only
astropy.units.Unitof thequantity.
-
unit_str¶ Read-only
astropy.units.Unit-compatiblestrindicating units ofquantity.
Methods Documentation
-
check_spec(name)¶ Check this measurement against a
Specificationlevel, of theMetric.Parameters: name :
strSpecificationlevel name.Returns: passed :
boolTrueif the measurement meets theSpecificationlevel,Falseotherwise.Notes
Internally this method retrieves the
Specificationobject, filtering first by thename, but also by this object’sfilter_nameattribute if specifications are filter-dependent.
-
from_json(json_data, blobs_json=None)¶ Construct a measurement from a JSON dataset.
Parameters: json_data :
dictMeasurement JSON object.
blobs_json :
listJSON serialization of blobs. This is the
blobsobject produced byJob.json.Returns: measurement :
MeasurementBase-typeMeasurement from JSON.
-
jsonify_dict(d)¶ Recursively build JSON-renderable objects on all values in a dict.
Parameters: d :
dictDictionary ito convert into a JSON-serializable object. Values are recursively JSON-ified.
Returns: json_dict :
dictDictionary that can be serialized to JSON.
Examples
Subclasses can use this method to prepare output in their
json-method implementation. For example:def json(self): return JsonSerializationMixin.jsonify_dict({ 'value': self.value, })
-
register_extra(extra_key, quantity=None, unit=None, label=None, description=None, datum=None)¶ Register a measurement extra—a by-product of a metric measurement.
The value of the extra can either be set at registration time (see
quantityargument), or later by setting the object’s attribute namedextra_key.The value of an extra can always be accessed through the object’s attribute named after
extra_key.Extras are stored as
Datumobjects, which can be accessed through theparametersattributedict.Parameters: extra_key :
strName of the extra; used as the key in the
extrasattribute of this object.quantity :
astropy.units.Quantity,str, orboolValue of the extra.
label :
str, optionalLabel suitable for plot axes (without units). By default the
extra_keyis used as thelabel. Setting this label argument overrides both of these.description :
str, optionalExtended description.
datum :
Datum, optionalIf a
Datumis provided, its value, label and description will be used unless overriden by other arguments toregister_extra.
-
register_parameter(param_key, quantity=None, label=None, description=None, datum=None)¶ Register a measurement input parameter attribute.
The value of the parameter can either be set at registration time (see
quantityargument), or later by setting the object’s attribute namedparam_key.The value of a parameter can always be accessed through the object’s attribute named after the provided
param_key.Parameters are stored as
Datumobjects, which can be accessed through theparametersattributedict.Parameters: param_key :
strName of the parameter; used as the key in the
parametersattribute of this object.quantity :
astropy.units.Quantity,strorbool.Value of the parameter.
label :
str, optionalLabel suitable for plot axes (without units). By default the
param_keyis used as thelabel. Setting thislabelargument overrides that default.description :
str, optionalExtended description of the parameter.
datum :
Datum, optionalIf a
Datumis provided, its quantity, label and description are be used unless overriden by other arguments to this method.
-