Exemplo n.º 1
0
 public DxScatterplotSettings(DxChartSettings settings)
 {
     digits_corr   = 2;
     digits_pvalue = 3;
     panevar       = "none";
     SetOutputtype(DxOutputtype.Scatterplot);
 }
Exemplo n.º 2
0
        public DxBarchart(DxChartSettings settings, DataTable mydt)         //, string xvar, string yvar, string titleinput, string colorsby)
        {
            _settings = settings;
            //Color col = _settings.color(0);

            CreateBarchart(mydt);
        }
Exemplo n.º 3
0
        public DxBarchart(DxChartSettings settings, DescStats mystats)         //, string xvar, string yvar, string titleinput, string colorsby)
        {
            _settings = settings;
            //Color col = _settings.color(0);

            CreateBarchart(mystats);
        }
Exemplo n.º 4
0
        //Actogram
        public DxChartBatch(DxActogramSettings mysettings, DataTable dt, string title)
        {
            Initialize();

            _batchsettings = (DxChartSettings)mysettings;

            outputtype = DxOutputtype.Actogram;
            layout     = mysettings.chartlayout;
            _vars      = mysettings.numvars;

            DxChart chart = new DxActogram(mysettings, dt);

            chart.AddTitles(title);
            charts.Add(chart);

            //if ( mysettings.panelvar != "variable")
            //{
            //	foreach (string v in _vars)
            //	{
            //		mysettings.yaxisvar = v;
            //		mysettings.seriesby = "id";
            //		DxChart chart = new DxActogram(mysettings, dt); //: new DxLineplot(mysettings, dt);
            //		chart.AddTitles(String.Format("{0} {1}", v, title));
            //		charts.Add(chart);

            //	}
            //}
        }
Exemplo n.º 5
0
 public DxChartOrder(DxChartSettings settings, List <string> myvars)
 {
     _list_settings = new List <DxChartSettings>()
     {
         settings
     };
     vars = myvars;
     Initialize();
 }
Exemplo n.º 6
0
        public void AddSettings(DxChartSettings mysettings)
        {
            _list_settings.Add(mysettings);

            if (mysettings.setup_errors != null)
            {
                this.errors.AddRange(mysettings.setup_errors);
            }
        }
Exemplo n.º 7
0
        public DxHistogramSettings(DxChartSettings settings)
        {
            W = settings.W;
            H = settings.H;
            //numvars = settings.numvars;
            //agevars = settings.agevars;
            //if (settings.agevars.Count > 0) numvars.AddRange(settings.agevars);
            colors = settings.colors;

            SetOutputtype(DxOutputtype.Histogram);
        }
Exemplo n.º 8
0
        //Histogram
        public DxChartBatch(DxHistogramSettings mysettings, DataTable dt)
        {
            Initialize();
            _batchsettings = (DxChartSettings)mysettings;
            outputtype     = DxOutputtype.Histogram;
            layout         = mysettings.chartlayout;
            _vars          = mysettings.numvars;
            if (mysettings.agevars != null)
            {
                _vars.AddRange(mysettings.agevars);
            }

            mysettings.numvars.Remove("id");


            if (mysettings.panelvar == "none")
            {
                foreach (string v in _vars)
                {
                    mysettings.xaxisvar = v;
                    DxChart chart = new DxHistogram(mysettings, dt, v, 0);
                    charts.Add(chart);
                }
            }
            else              //Yes panels
            {
                List <string> varnames = new List <string>();
                varnames.AddRange(_vars);
                varnames.Add(mysettings.xaxisvar);
                varnames.Add(mysettings.colorvar);
                varnames.RemoveAll(item => item == "variable");
                varnames.RemoveAll(item => item == "none");


                DataSubsets subsets = new DataSubsets(dt, varnames, new List <string> {
                    mysettings.panelvar
                });

                foreach (DataSubset subset in subsets.subsets)
                {
                    foreach (string v in mysettings.numvars)
                    {
                        _batchsettings.xaxisvar = v;
                        DxChart chart = new DxHistogram(mysettings, subset.dt, v, 0);
                        chart.AddTitles(subset.Cols_and_Vals_ToString());
                        charts.Add(chart);
                    }
                }
            }
        }
Exemplo n.º 9
0
 public void PrepareBatch(DxChartBatch batch, DxChartSettings settings)
 {
     if (batch.charts.Count > 0)
     {
         batch.maxCol = settings.maxCol;
         batch.maxRow = settings.maxRow;
         batch.layout = settings.chartlayout;
         foreach (DxChart chart in batch.charts)
         {
             chart.W = settings.W;
             chart.H = settings.H;
         }
     }
 }
Exemplo n.º 10
0
        //Lineplot
        public DxChartBatch(DxLineplotSettings mysettings, DataTable dt, string title)
        {
            Initialize();

            _batchsettings = (DxChartSettings)mysettings;

            outputtype = DxOutputtype.Lineplot;
            layout     = mysettings.chartlayout;
            _vars      = mysettings.numvars;
            if (mysettings.agevars != null)
            {
                _vars.AddRange(mysettings.agevars);
            }

            if (mysettings.xaxisvar == "variable")             //This is just one plot
            {
                DxChart chart = new DxLineplot(mysettings, dt);
                chart.AddTitles(title);
                charts.Add(chart);
            }
            else
            {
                //Check to see if "variable" is used in color, if not then loop through all the numvars and create a plot for each
                if (mysettings.colorvar != "variable" & mysettings.panelvar != "variable")
                {
                    foreach (string v in _vars)
                    {
                        if (mysettings.xaxisvar != v)                         //If y is not the same as x, then continue
                        {
                            mysettings.yaxisvar = v;
                            mysettings.seriesby = "id";
                            DxChart chart = new DxLineplot(mysettings, dt);
                            chart.AddTitles(String.Format("{0} {1}", v, title));
                            charts.Add(chart);
                        }
                    }
                }
                // if variable is used as a color
                else
                {
                    DxChart chart = new DxLineplot(mysettings, dt);
                    chart.AddTitles(title);
                    charts.Add(chart);
                }
            }
        }
Exemplo n.º 11
0
        //Barchart
        //need to get stats first!
        public DxChartBatch(DxBarchartSettings mysettings, DataTable dt)
        {
            Initialize();

            _batchsettings = (DxChartSettings)mysettings;

            outputtype = DxOutputtype.Barchart;
            layout     = mysettings.chartlayout;
            _vars      = mysettings.numvars;
            if (mysettings.agevars != null)
            {
                _vars.AddRange(mysettings.agevars);
            }

            mysettings.numvars.Remove("id");


            if (mysettings.panelvar == "none")
            {
                DxBarchart chart = new DxBarchart(mysettings, dt);
                charts.Add(chart);
                _datatables.Add(chart.statstable.dt);
            }
            else
            {
                List <string> grpvarnames = new List <string>();
                grpvarnames.Add(mysettings.xaxisvar);
                grpvarnames.Add(mysettings.colorvar);
                grpvarnames.Add(mysettings.panelvar);
                grpvarnames.RemoveAll(item => item == "variable");
                grpvarnames.RemoveAll(item => item == "none");


                DescStats stats = new DescStats(dt, _vars, grpvarnames);


                DxBarchart chart = new DxBarchart(mysettings, stats);

                //chart.AddTitles(subset.Cols_and_Vals_ToString());
                charts.Add(chart);

                //fix?
                //_datatables.Add(chart.statstable.dt);
            }
        }
Exemplo n.º 12
0
 public DxChartBatch(DxOutputtype mycharttype, DxChartSettings mysettings)
 {
     Initialize();
     outputtype     = mycharttype;          //turned on Apr8 2019
     _batchsettings = mysettings;
 }
Exemplo n.º 13
0
        //Scatterplot
        public DxChartBatch(DxScatterplotSettings mysettings, DataTable dt)
        {
            Initialize();

            _batchsettings = (DxChartSettings)mysettings;

            outputtype = DxOutputtype.Scatterplot;
            layout     = mysettings.chartlayout;

            _vars = mysettings.analysisvars();


            //Define the sets of scatterplots to create.



            //// **** NO REPEATED MEASURES ****
            ////Square matrix
            //if (mysettings.repeatedmeasVarname == "none" & mysettings.analysisvarsX() == mysettings.analysisvarsY())
            //{
            //	XYpairs pairs = new XYpairs(mysettings.analysisvarsX()); //, mysettings.colors[0]);

            //	foreach (XYpair pair in pairs.pairs)
            //	{
            //		DxChart chart = new DxScatterplot(mysettings, dt, pair);
            //		if(chart.n > 1) charts.Add(chart);
            //	}
            //}
            ////Rectangle matrix
            //else if (mysettings.repeatedmeasVarname == "none" & mysettings.analysisvarsX() != mysettings.analysisvarsY())
            //{
            //	XYpairs pairs = new XYpairs(mysettings.analysisvarsX(), mysettings.analysisvarsY()); //, mysettings.colors[0]);

            //	if(mysettings.chartlayout == DxLayout.Horizontal)
            //	{
            //		mysettings.chartlayout = DxLayout.Vertical;
            //		mysettings.maxRow = mysettings.analysisvarsY().Count;
            //	}
            //	else if (mysettings.chartlayout == DxLayout.Vertical)
            //	{
            //		mysettings.chartlayout = DxLayout.Horizontal;
            //		mysettings.maxCol = mysettings.analysisvarsX().Count;
            //	}

            //	foreach (XYpair pair in pairs.pairs)
            //	{
            //		DxChart chart = new DxScatterplot(mysettings, dt, pair);
            //		if (chart.n > 1) charts.Add(chart);
            //	}
            //}
            //// **** YES REPEATED MEASURES ****
            //else
            if (true)
            {
                //List<string> repeatedmeas_levels = mysettings.rptmeasLevels(dt); //.AsEnumerable().Select(f => f.Field<string>(mysettings.repeatedmeasVarname)).Distinct().ToList();
                //List<string> analysisvars = mysettings.analysisvars();
                List <string> idvars = new List <string> {
                    "id"
                };

                if (mysettings.colorvar != "none")
                {
                    idvars.Add(mysettings.colorvar);
                }
                if (mysettings.panelvar != "none")
                {
                    idvars.Add(mysettings.panelvar);
                }

                idvars.Remove(mysettings.repeatedmeasVarname);



                List <string> keepvars = new List <string>();
                if (mysettings.repeatedmeasVarname != "none")
                {
                    keepvars.Add(mysettings.repeatedmeasVarname);
                }
                keepvars.AddRange(mysettings.analysisvars());
                keepvars.AddRange(idvars);

                DataTable dtwide;
                if (mysettings.repeatedmeasVarname != "none")
                {
                    // Widen the data using the repeated measure value
                    DataSubsets subsets = new DataSubsets(dt, keepvars, new List <string> {
                        mysettings.repeatedmeasVarname
                    });
                    dtwide = subsets.FullOuterJoinDataTables(idvars);
                }
                else
                {
                    dtwide = dt.Copy();
                }
                List <string> colnames = dtwide.ColumnNames();

                XYpairs pairs = new XYpairs(mysettings.analysisvars(), mysettings.rptmeasLevels(dt), mysettings.current_xypairtype);

                //pairs.RemoveInverse();

                foreach (XYpair pair in pairs.pairs)
                {
                    DxChart chart = new DxScatterplot(mysettings, dtwide, pair);
                    if (chart.n > 1)
                    {
                        charts.Add(chart);
                    }
                    //new RowColIndex( )
                    //chart.rowcolIndex(new
                }
            }
        }
Exemplo n.º 14
0
 public DxActogramSettings(DxChartSettings settings)
 {
     SetOutputtype(DxOutputtype.Actogram);
 }
Exemplo n.º 15
0
 public DxActogramSettings(DxChartSettings settings, DxOutputtype myoutputtype)
 {
     SetOutputtype(myoutputtype);
 }
Exemplo n.º 16
0
 public DxLineplotSettings(DxChartSettings settings)
 {
     SetOutputtype(DxOutputtype.Lineplot);
 }
Exemplo n.º 17
0
 public DxLineplotSettings(DxChartSettings settings, DxOutputtype myoutputtype)
 {
     SetOutputtype(myoutputtype);
 }