private void DoChart() { var ct = new ChartTools(_coName, Chart1, 70, 1); ct.Resize(DropSize.SelectedValue, 0.75D); ct.Reset(_coName + " timeline"); ct.DoSharesVolume(); ct.DoEvents(); }
protected void DoShares() { Series s; const string area = "SharesTraded"; const string volume = "Shares volume"; if (_series.IndexOf(volume) >= 0) { s = Chart1.Series[volume]; } else { _series.Add(volume); s = Chart1.Series.Add(volume); s.ChartArea = area; s.ChartType = "Line"; s.Legend = area; } Series sp; const string price = "Shares price"; if (_series.IndexOf(price) >= 0) { sp = Chart1.Series[price]; } else { _series.Add(price); sp = Chart1.Series.Add(price); sp.ChartArea = area; sp.ChartType = "StepLine"; sp.Legend = area; sp.YAxisType = AxisType.Secondary; } var dal = new SharesManager(); var table = dal.GetSharesTraded(_coName, 70); var vw = new DataView(table, "", table.dateColumn.ColumnName + " asc", DataViewRowState.CurrentRows); foreach (DataRowView rowView in vw) { var row = (DtstCOI.company_shares_tradedRow)rowView.Row; if (!IsPointUsable(row.date)) { continue; } var p = s.Points.AddXY(row.date, row.vloume); var pp = sp.Points.AddXY(row.date, row.price_close); SetMaxMinDates(row.date, row.date); } //------------------------------------------------------------------------------- if (!checkArea.Checked) { return; } //------------------------------------------------------------------------------- double ratio; try { ratio = double.Parse(TextRatio.Text); } catch { ratio = 0.5D; } const string vol = "Highlighted Volume"; if (_series.IndexOf(vol) >= 0) { s = Chart1.Series[vol]; } else { _series.Add(vol); s = Chart1.Series.Add(vol); s.ChartArea = area; s.ChartType = "Area"; s.Legend = area; } if (TextAreaDescription.Text.Trim() != string.Empty) { s.LegendText = TextAreaDescription.Text; } var ct = new ChartTools(_coName, Chart1, 70, 1); var vwA = ct.GetAreaPoints(int.Parse(this.TextVolume.Text)); foreach (DataRowView rowView in vwA) { var row = (DtstCOI.company_shares_tradedRow)rowView.Row; var p = s.Points.AddXY(row.date, row.vloume * ratio); } }