Advertisement
Guest User

Untitled

a guest
Jan 21st, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.33 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using TrendingGUI.ServiceReference1;
  11.  
  12. namespace TrendingGUI
  13. {
  14. public partial class Form1 : Form
  15. {
  16. static TrendingClient proxy = new TrendingClient();
  17. public static Dictionary<string, LinkedList<double>> dispValues;
  18.  
  19. public Form1()
  20. {
  21. dispValues = new Dictionary<string, LinkedList<double>>();
  22. InitializeComponent();
  23. trendingChart.ChartAreas[0].AxisY.Title = "Value";
  24. trendingChart.ChartAreas[0].AxisY.TitleFont = new Font(new FontFamily("Arial"), 12);
  25. timer1.Start();
  26. }
  27.  
  28. public void Update(Dictionary<Tag, double> tagValues)
  29. {
  30.  
  31. foreach (Tag tag in tagValues.Keys)
  32. {
  33. if (dispValues.ContainsKey(tag.tagName))
  34. {
  35. dispValues[tag.tagName].RemoveFirst();
  36. dispValues[tag.tagName].AddLast(tagValues[tag]);
  37. }
  38. else
  39. {
  40. trendingChart.Series.Add(tag.tagName);
  41. trendingChart.Series[tag.tagName].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline;
  42. trendingChart.Series[tag.tagName].BorderWidth = 4;
  43. LinkedList<double> lis = new LinkedList<double>();
  44. for (int i = 0; i < 23; i++)
  45. {
  46. lis.AddLast(tagValues[tag]);
  47. }
  48. dispValues.Add(tag.tagName, lis);
  49. }
  50. }
  51. foreach (string s in dispValues.Keys)
  52. {
  53.  
  54. trendingChart.Series[s].Points.Clear();
  55. for (int i = 0; i < dispValues[s].Count - 1; i++)
  56. {
  57. trendingChart.Series[s].Points.AddXY(i, dispValues[s].ElementAt(i));
  58. }
  59. }
  60. }
  61.  
  62.  
  63. private void timer1_Tick(object sender, EventArgs e)
  64. {
  65. Update(proxy.getData());
  66. }
  67.  
  68. private void trendingChart_Click(object sender, EventArgs e)
  69. {
  70.  
  71. }
  72. }
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement