public HistogramOperationViewModel CreateDefaultHistogramOperationViewModel(AttributeModel attributeModel, Pt position)
        {
            var visModel = OperationViewModelFactory.CreateDefaultHistogramOperationViewModel(MainModel.SchemaModel, attributeModel, position);

            visModel.Position = position;
            addAttachmentViews(visModel);
            OperationViewModels.Add(visModel);
            return(visModel);
        }
Ejemplo n.º 2
0
        private void OperationModel_OperationModelUpdated(object sender, OperationModelUpdatedEventArgs e)
        {
            if (_mainModel.IsDefaultHypothesisEnabled)
            {
                var model = sender as HistogramOperationModel;

                var filter       = "";
                var filterModels = new List <FilterModel>();
                filter = FilterModel.GetFilterModelsRecursive(model, new List <IFilterProviderOperationModel>(), filterModels, true);

                if (!filterModels.Any())
                {
                    if (model.StatisticalComparisonOperationModel != null)
                    {
                        RemoveStatisticalComparisonOperationModel(model.StatisticalComparisonOperationModel);
                        model.StatisticalComparisonOperationModel = null;
                    }
                }
                else
                {
                    bool anyComparison = false;
                    foreach (var statisticalComparisonOperationViewModel in ComparisonViewController.Instance.StatisticalComparisonViews.Keys)
                    {
                        foreach (var ovm in statisticalComparisonOperationViewModel.OperationViewModels)
                        {
                            if (ovm.OperationModel == model)
                            {
                                anyComparison = true;
                                break;
                            }
                        }
                    }

                    if (!anyComparison)
                    {
                        StatisticalComparisonOperationModel statModel = model.StatisticalComparisonOperationModel;
                        bool add = false;
                        if (model.StatisticalComparisonOperationModel == null)
                        {
                            statModel = new StatisticalComparisonOperationModel(model.SchemaModel);
                            var a1 = model.GetAttributeUsageTransformationModel(AttributeUsage.X).FirstOrDefault();
                            if ((a1.AttributeModel as AttributeFieldModel).InputDataType == InputDataTypeConstants.FLOAT ||
                                (a1.AttributeModel as AttributeFieldModel).InputDataType == InputDataTypeConstants.INT)
                            {
                                //statModel.TestType = TestType.ttest;
                            }
                            model.StatisticalComparisonOperationModel = statModel;
                            add = true;
                        }
                        foreach (var m in statModel.StatisticallyComparableOperationModels.ToArray())
                        {
                            statModel.RemoveStatisticallyComparableOperationModel(m);
                        }
                        statModel.AddStatisticallyComparableOperationModel(model);
                        statModel.AddStatisticallyComparableOperationModel(
                            OperationViewModelFactory.CreateDefaultHistogramOperationViewModel(
                                model.SchemaModel,
                                model.GetAttributeUsageTransformationModel(AttributeUsage.X).First().AttributeModel, new Pt()).HistogramOperationModel);


                        if (add)
                        {
                            this.AddStatisticalComparisonOperationModel(statModel);
                        }
                    }
                }
            }
        }