Esempio n. 1
0
        public void FrappeChartsTest_Json()
        {
            var chart = new FrappeChart(Selector, ChartName, formatJson: false);
            var json  = chart.ToString();

            Assert.False(string.IsNullOrWhiteSpace(json));
        }
Esempio n. 2
0
        public void FrappeChartsTest_EmptyChart()
        {
            var options = new ChartOptions();

            var chart = new FrappeChart(Selector, ChartName, formatJson: false)
            {
                Options = options
            };
            var chartJson         = chart.ToString();
            var jsonOptionsSample = "{}";
            var chartSample       = $"var {ChartName} = new frappe.Chart(\"{Selector}\", {jsonOptionsSample});" + Environment.NewLine;

            Assert.Equal(chartSample, chartJson);
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            var curDir = Directory.GetCurrentDirectory();

            Console.WriteLine($"Current Directory: {curDir}");
            try
            {
                var months = 12;

                var FileName = "democharts.js";

                Random r = new Random();

                var Data1 = new Dataset()
                {
                    Name      = "Data 1",
                    ChartType = ChartTypes.line,
                    Values    = Enumerable.Range(0, months)
                                .Select(x => r.Next(1000))
                                .Select(y => (object)y)
                                .ToArray()
                };

                var Data2 = new Dataset()
                {
                    Name      = "Data 2",
                    ChartType = ChartTypes.line,
                    Values    = Enumerable.Range(0, months)
                                .Select(x => r.Next(1000))
                                .Select(y => (object)y)
                                .ToArray()
                };


                var labels = Enumerable.Range(0, months)
                             .Select(i => DateTime.Now.AddMonths(i - months))
                             .Select(date => date.ToString("MMM yyyy"))
                             .ToArray();


                var lineOptions = new LineOptions()
                {
                    Heatline   = true,
                    RegionFill = true,
                    DotSize    = 5
                };

                var axisOption = new AxisOptions()
                {
                    XAxisMode = AxisModes.tick
                };

                var FrappeChart = new FrappeChart("#FrappeChart", "FrappeChart")
                {
                    Options = new ChartOptions()
                    {
                        Title  = $"Chart Title",
                        Height = 350,
                        Data   = new ChartData()
                        {
                            Labels   = labels,
                            Datasets = new Dataset[] {
                                Data1,
                                Data2
                            }
                        },
                        Type             = ChartTypes.line,
                        ValuesOverPoints = false,
                        LineOptions      = lineOptions,
                        AxisOptions      = axisOption,
                        Colors           = new string[] { "#5bcaff", "#ff82d0" }
                    }
                };

                Console.WriteLine($"Saving Chart to file '{FileName}'");
                File.WriteAllText(FileName, FrappeChart.ToString());
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            Console.WriteLine($"Starting default browser with 'index.html'");
            Process proc = new Process();

            proc.StartInfo.UseShellExecute = true;
            proc.StartInfo.FileName        = "index.html";
            proc.Start();
        }