コード例 #1
0
    def build_ui(cls):
        inputs = []
        inputs.append(
            UISingleItem(name='input_item',
                         datatype=float,
                         description='Item to base anomaly on'))

        inputs.append(
            UISingle(
                name='factor',
                datatype=int,
                description=
                'Frequency of anomaly e.g. A value of 3 will create anomaly every 3 datapoints',
                default=10))

        inputs.append(
            UISingle(name='width',
                     datatype=int,
                     description='Width of the anomaly created',
                     default=5))

        outputs = []
        outputs.append(
            UIFunctionOutSingle(
                name='output_item',
                datatype=float,
                description='Generated Item With Flatline anomalies'))
        return (inputs, outputs)
コード例 #2
0
    def build_ui(cls):
        inputs = []
        inputs.append(
            UISingleItem(name='input_item',
                         datatype=float,
                         description='Item to base anomaly on'))

        inputs.append(
            UISingle(
                name='factor',
                datatype=int,
                description=
                'Frequency of anomaly e.g. A value of 3 will create anomaly every 3 datapoints',
                default=5))

        inputs.append(
            UISingle(
                name='size',
                datatype=int,
                description=
                'Size of extreme anomalies to be created. e.g. 10 will create 10x size extreme \
                             anomaly compared to the normal variance',
                default=10))

        outputs = []
        outputs.append(
            UIFunctionOutSingle(
                name='output_item',
                datatype=float,
                description='Generated Item With Extreme anomalies'))
        return (inputs, outputs)
コード例 #3
0
    def build_ui(cls):
        # define arguments that behave as function inputs
        inputs = []
        inputs.append(UISingleItem(name='dimension_name', datatype=str))
        inputs.append(
            UISingle(name='dimension_value',
                     datatype=str,
                     description='Dimension Filter Value'))
        inputs.append(
            UIExpression(
                name='expression',
                description="Define alert expression using pandas systax. \
                                                Example: df['inlet_temperature']>50. ${pressure} will be substituted \
                                                with df['pressure'] before evaluation, ${} with df[<dimension_name>]"
            ))
        inputs.append(
            UISingle(name='pulse_trigger',
                     description=
                     "If true only generate alerts on crossing the threshold",
                     datatype=bool))

        # define arguments that behave as function outputs
        outputs = []
        outputs.append(
            UIFunctionOutSingle(name='alert_name',
                                datatype=bool,
                                description='Output of alert function'))
        outputs.append(
            UIFunctionOutSingle(name='alert_end',
                                datatype=dt.datetime,
                                description='End of pulse triggered alert'))
        return (inputs, outputs)
コード例 #4
0
    def build_ui(cls):
        '''
        Preload function has no dataframe in or out so standard _getMetadata() does not work
        '''
        # define arguments that behave as function inputs
        inputs = {}
        inputs['dummy'] = UISingle(
            name='dummy', datatype=str,
            description='Dummy attribute as input').to_metadata()

        # define arguments that behave as function outputs
        outputs = OrderedDict()

        outputs['predict1'] = UIFunctionOutSingle(
            name='predict1',
            datatype=str,
            description='Returns a prediction value').to_metadata()

        outputs['predict2'] = UIFunctionOutSingle(
            name='predict2',
            datatype=str,
            description='Returns a prediction value').to_metadata()

        outputs['predict3'] = UIFunctionOutSingle(
            name='predict3',
            datatype=str,
            description='Returns a prediction value').to_metadata()

        outputs['predict4'] = UIFunctionOutSingle(
            name='predict4',
            datatype=str,
            description='Returns a prediction value').to_metadata()

        return (inputs, outputs)
コード例 #5
0
ファイル: alert.py プロジェクト: sedgewickmm18/mmfunctions
    def build_ui(cls):
        # define arguments that behave as function inputs
        inputs = []
        inputs.append(UISingleItem(name='dimension_name', datatype=str))
        inputs.append(UISingle(name='dimension_value', datatype=str,
                               description='Dimension Filter Value'))
        inputs.append(UIExpression(name='expression',
                                   description="Define alert expression using pandas systax. \
                                                Example: df['inlet_temperature']>50. ${pressure} will be substituted \
                                                with df['pressure'] before evaluation, ${} with df[<dimension_name>]"))

        # define arguments that behave as function outputs
        outputs = []
        outputs.append(UIFunctionOutSingle(name='alert_name', datatype=bool, description='Output of alert function'))
        return (inputs, outputs)
コード例 #6
0
    def build_ui(cls):

        inputs = []
        outputs = []
        inputs.append(
            UIMultiItem(name='input_items',
                        datatype=None,
                        description=('Choose the data items'
                                     ' that you would like to'
                                     ' aggregate'),
                        output_item='output_items',
                        is_output_datatype_derived=True))

        aggregate_names = list(cls.get_available_methods().keys())

        inputs.append(
            UISingle(name='aggregation_function',
                     description='Choose aggregation function',
                     values=aggregate_names))

        return (inputs, outputs)
コード例 #7
0
# import classes needed from iotfunctions
from iotfunctions.db import Database
from iotfunctions.ui import UISingle,UIMulti

# Connect to Analytic Service
db = Database(credentials = credentials, tenant_id=credentials['tennant_id'])


'''
Constants are defined by identifying  the UI control that will manager them.
Constants may either be scalars or arrays. Single valued (scalars) will be
managed using single line edit, which is derived from the UISingle class.

'''
gamma = UISingle(name='gamma',
                 description= 'Sample single valued parameter',
                 datatype=float)

'''
Arrays are managed using a multi-select control
'''

zeta = UIMulti(name='zeta',
                 description= 'Sample multi-valued array',
                 values = ['A','B','C'],
                 datatype = str
            )

'''
Use the register_constants method on the Database object to make constants
available in the UI