/// <summary>
        ///     Normalized Stacked Bar Chart Data object.
        /// </summary>
        /// <param name="Headers">Names of all values that will be grouped. First value is always "Name".</param>
        /// <param name="Values">Nested List of values where first item in a sub-list is Group Name. Following items
        /// must match number of value names defined in Headers input. </param>
        /// <returns name="Data">Normalized Stacked Bar Chart Data</returns>
        /// <search>normalized, data, stacked, bar, chart</search>
        public static NormalizedStackedBarChartData Data(
            List <string> Headers,
            List <List <object> > Values)
        {
            NormalizedStackedBarChartData data = new NormalizedStackedBarChartData();

            data.Data = ChartsUtilities.DataToJsonString(ChartsUtilities.Data2FromList(Headers, Values));

            return(data);
        }
Exemple #2
0
        /// <summary>
        /// This is the method that actually does the work.
        /// </summary>
        /// <param name="DA">The DA object is used to retrieve from inputs and store in outputs.</param>
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            string filePath = null;

            if (!DA.GetData <string>(0, ref filePath))
            {
                return;
            }

            NormalizedStackedBarChartData data = new NormalizedStackedBarChartData();

            data.Data = D3jsLib.Utilities.ChartsUtilities.Data2FromCSV(filePath);

            DA.SetData(0, data);
        }
Exemple #3
0
        /// <summary>
        /// This is the method that actually does the work.
        /// </summary>
        /// <param name="DA">The DA object is used to retrieve from inputs and store in outputs.</param>
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            NormalizedStackedBarChartData  data  = null;
            NormalizedStackedBarChartStyle style = null;

            if (!DA.GetData <NormalizedStackedBarChartData>(0, ref data))
            {
                return;
            }
            if (!DA.GetData <NormalizedStackedBarChartStyle>(1, ref style))
            {
                return;
            }

            D3jsLib.NormalizedStackedBarChart.NormalizedStackedBarChart chart = new D3jsLib.NormalizedStackedBarChart.NormalizedStackedBarChart(data, style);

            DA.SetData(0, chart);
        }
        /// <summary>
        /// This is the method that actually does the work.
        /// </summary>
        /// <param name="DA">The DA object is used to retrieve from inputs and store in outputs.</param>
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            List <string>            headers = new List <string>();
            GH_Structure <GH_String> values;

            if (!DA.GetDataList <string>(0, headers))
            {
                return;
            }
            if (!DA.GetDataTree(1, out values))
            {
                return;
            }

            NormalizedStackedBarChartData data = new NormalizedStackedBarChartData();

            data.Data = ChartsUtilities.DataToJsonString(Utilities.Utilities.Data2FromTree(headers, values));

            DA.SetData(0, data);
        }
        /// <summary>
        /// This is the method that actually does the work.
        /// </summary>
        /// <param name="DA">The DA object is used to retrieve from inputs and store in outputs.</param>
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            List <string>            headers = new List <string>();
            GH_Structure <GH_String> values;

            if (!DA.GetDataList <string>(0, headers))
            {
                return;
            }
            if (!DA.GetDataTree(1, out values))
            {
                return;
            }

            List <DataPoint2> dataPoints = Mandrill_Grasshopper.Utilities.Utilities.Data2FromTree(headers, values);

            NormalizedStackedBarChartData data = new NormalizedStackedBarChartData();

            data.Data = dataPoints;

            DA.SetData(0, data);
        }
        /// <summary>
        ///     Normalized Stacked Bar Chart Data object.
        /// </summary>
        /// <param name="FilePath">Path to a CSV file.</param>
        /// <returns name="Data">Data Class for use with Stacked Bar Chart.</returns>
        /// <search>normalized, data, stacked bar chart, chart, bar, grouped</search>
        public static NormalizedStackedBarChartData DataFromCSV(
            object FilePath)
        {
            // get full path to file as string
            // if File.FromPath is used it returns FileInfo class
            string _filePath = "";

            try
            {
                _filePath = (string)FilePath;
            }
            catch
            {
                _filePath = ((FileInfo)FilePath).FullName;
            }

            NormalizedStackedBarChartData data = new NormalizedStackedBarChartData();

            data.Data = ChartsUtilities.DataToJsonString(ChartsUtilities.Data2FromCSV(_filePath));

            return(data);
        }
        /// <summary>
        ///     Normalized Stacked Bar Chart Data object.
        /// </summary>
        /// <param name="Headers">Names of all values that will be grouped. First value is always "Name".</param>
        /// <param name="Values">Nested List of values where first item in a sub-list is Group Name. Following items
        /// must match number of value names defined in Headers input. </param>
        /// <returns name="Data">Normalized Stacked Bar Chart Data</returns>
        /// <search>normalized, data, stacked, bar, chart</search>
        public static NormalizedStackedBarChartData Data(
            List <string> Headers,
            List <List <object> > Values)
        {
            List <DataPoint2> dataPoints = new List <DataPoint2>();

            foreach (List <object> subList in Values)
            {
                DataPoint2 dataPoint = new DataPoint2();
                dataPoint.Name = subList[0].ToString();
                Dictionary <string, double> values = new Dictionary <string, double>();
                for (int i = 1; i < subList.Count(); i++)
                {
                    values.Add(Headers[i], Convert.ToDouble(subList[i]));
                }
                dataPoint.Values = values;
                dataPoints.Add(dataPoint);
            }
            NormalizedStackedBarChartData data = new NormalizedStackedBarChartData();

            data.Data = dataPoints;

            return(data);
        }
 /// <summary>
 ///     New Normalized Stacked Bar Chart object.
 /// </summary>
 /// <param name="Data">Normalized Stacked Bar Chart Data.</param>
 /// <param name="Style">Normalized Stacked Bar Chart Style.</param>
 /// <returns name="Chart">Generated Bar Chart.</returns>
 /// <search>normalized, bar, chart, grouped</search>
 public static D3jsLib.NormalizedStackedBarChart.NormalizedStackedBarChart Chart(NormalizedStackedBarChartData Data, NormalizedStackedBarChartStyle Style)
 {
     D3jsLib.NormalizedStackedBarChart.NormalizedStackedBarChart chart = new D3jsLib.NormalizedStackedBarChart.NormalizedStackedBarChart(Data, Style);
     return(chart);
 }