public BasicLineChartControl(BasicLineChartNodeModel model)
        {
            InitializeComponent();

            model.PropertyChanged += NodeModel_PropertyChanged;

            BuildUI(model);

            DataContext = this;
        }
        private void BuildUI(BasicLineChartNodeModel model)
        {
            // Load sample data if any ports are not connected
            if (!model.InPorts[0].IsConnected && !model.InPorts[1].IsConnected && !model.InPorts[2].IsConnected)
            {
                var seriesRange = new LineSeries[]
                {
                    new LineSeries {
                        Title = "Series 1", Values = new ChartValues <double> {
                            4, 6, 5, 2, 4
                        }
                    },
                    new LineSeries {
                        Title = "Series 2", Values = new ChartValues <double> {
                            6, 7, 3, 4, 6
                        }
                    },
                    new LineSeries {
                        Title = "Series 3", Values = new ChartValues <double> {
                            4, 2, 7, 2, 7
                        }
                    }
                };

                BasicLineChart.Series.AddRange(seriesRange);
            }
            else if (model.InPorts[0].IsConnected && model.InPorts[1].IsConnected && model.InPorts[2].IsConnected)
            {
                if (model.Labels.Count == model.Values.Count && model.Labels.Count > 0)
                {
                    LineSeries[] seriesRange = new LineSeries[model.Labels.Count];

                    for (var i = 0; i < model.Labels.Count; i++)
                    {
                        seriesRange[i] = new LineSeries
                        {
                            Title  = model.Labels[i],
                            Values = new ChartValues <double>(model.Values[i]),
                            Stroke = model.Colors[i],
                            Fill   = Brushes.Transparent
                        };
                    }

                    BasicLineChart.Series.AddRange(seriesRange);
                }
            }
        }