Guest User

Untitled

a guest
Jul 23rd, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.58 KB | None | 0 0
  1. <asp:chart id="Chart1" runat="server" Height="365px"
  2. Width="700px" ImageLocation="~/TempImages/ChartPic_#SEQ(300,3)" ImageType="Png"
  3. BackColor="WhiteSmoke" BackSecondaryColor="White" BackGradientStyle="TopBottom"
  4. palette="BrightPastel" BorderWidth="2"
  5. BorderColor="26, 59, 105">
  6. <titles>
  7. <asp:Title ShadowColor="32, 0, 0, 0" Font="Trebuchet MS, 14.25pt, style=Bold" ShadowOffset="3" Text="Chart Title" Alignment="MiddleLeft" ForeColor="26, 59, 105"></asp:Title>
  8. </titles>
  9. <legends>
  10. <asp:Legend Enabled="True" IsTextAutoFit="False" Name="Default" BackColor="Transparent" Font="Trebuchet MS, 8.25pt, style=Bold"></asp:Legend>
  11. </legends>
  12. <borderskin skinstyle="Emboss"></borderskin>
  13. <chartareas>
  14. <asp:ChartArea Name="ChartArea1" BorderColor="64, 64, 64, 64" BorderDashStyle="Solid" BackSecondaryColor="White" BackColor="Gainsboro" ShadowColor="Transparent" BackGradientStyle="TopBottom">
  15. <axisy2 enabled="False"></axisy2>
  16. <axisx2 enabled="False"></axisx2>
  17. <area3dstyle Rotation="10" perspective="10" Inclination="15" IsRightAngleAxes="False" wallwidth="0" IsClustered="False"></area3dstyle>
  18. <axisy linecolor="64, 64, 64, 64" IsLabelAutoFit="False" ArrowStyle="Triangle">
  19. <labelstyle font="Trebuchet MS, 8.25pt, style=Bold" />
  20. <majorgrid linecolor="64, 64, 64, 64" />
  21. </axisy>
  22. <axisx linecolor="64, 64, 64, 64" IsLabelAutoFit="False" ArrowStyle="Triangle">
  23. <labelstyle font="Trebuchet MS, 8.25pt, style=Bold" IsStaggered="False"/>
  24. <majorgrid linecolor="64, 64, 64, 64" />
  25. </axisx>
  26. </asp:ChartArea>
  27. </chartareas>
  28. </asp:chart>
  29.  
  30. foreach (TreeNode node in ChartTreeView.CheckedNodes)
  31. {
  32. if(node.Text.Contains("XXX") )
  33. {
  34. Series series = Chart1.Series.Add(node.Text);
  35. series.ChartArea = "ChartArea1";
  36. series.ChartType = (SeriesChartType)Enum.Parse(typeof(SeriesChartType), charts[1], true);
  37. SqlConnection sqlConnection = new SqlConnection(@"DATA GOES HERE FOR SQL");
  38. sqlConnection.Open();
  39.  
  40. SqlCommand nodeQuery = new SqlCommand();
  41. nodeQuery.CommandText = "";
  42. if (node.Text.Contains("XXX"))
  43. {
  44. nodeQuery.CommandText = "SELECT (Date + CONVERT(datetime,Time)) As TimeStamp, (MW + kW) As Energy, [EquipmentID] FROM EquipmentData WHERE [EquipmentID] = '" + node.Text + "' AND (Date + CONVERT(datetime,Time)) BETWEEN '" + startDateFilter + "' AND '" + endDateFilter + "' and [SiteID] = "+ProjectNavigation.SelectedValue.ToString()+" ORDER BY TimeStamp";";
  45. nodeQuery.Connection = sqlConnection;
  46.  
  47. }
  48. if (nodeQuery.CommandText != "")
  49. {
  50. SqlDataReader reader = nodeQuery.ExecuteReader();
  51. while (reader.Read())
  52. {
  53. double value = (double)reader["Energy"];
  54. DateTime TimeStamp = (DateTime)reader["TimeStamp"];
  55. string equipID = (string)reader["EquipmentID"];
  56.  
  57. series.Points.AddXY(TimeStamp, value);
  58.  
  59. }
  60. sqlConnection.Close();
  61. }
  62. }
  63. }
  64. Chart1.DataBind();
  65.  
  66. public void SetAxisInterval(System.Web.UI.DataVisualization.Charting.Axis axis, double interval, DateTimeIntervalType intervalType)
  67. {
  68. SetAxisInterval(axis, interval, intervalType, 0, DateTimeIntervalType.Auto);
  69. }
  70.  
  71. public void SetAxisInterval(System.Web.UI.DataVisualization.Charting.Axis axis, double interval, DateTimeIntervalType intervalType, double intervalOffset, DateTimeIntervalType intervalOffsetType)
  72. {
  73. // Set interval-related properties
  74. axis.Interval = interval;
  75. axis.IntervalType = intervalType;
  76. axis.IntervalOffset = intervalOffset;
  77. axis.IntervalOffsetType = intervalOffsetType;
  78.  
  79. }
  80.  
  81. SetAxisInterval(Chart1.ChartAreas["ChartArea1"].AxisX, 10, DateTimeIntervalType.Minutes);
  82.  
  83. DateTime startDateVal;
  84. DateTime endDateVal;
  85.  
  86. TimeSpan span = DateTime.Parse(endDate.Text) - DateTime.Parse(startDate.Text);
  87. if (span.TotalDays > 0)
  88. {
  89. startDateVal = DateTime.Parse(startDate.Text);
  90. endDateVal = DateTime.Parse(endDate.Text;
  91. }
  92. else
  93. {
  94. startDateVal = DateTime.Parse(startDate.Text);
  95. endDateVal = DateTime.Parse(endDate.Text).AddDays(1);
  96. }
  97.  
  98. Chart1.ChartAreas["ChartArea1"].AxisX.Minimum = startDateVal.ToOADate();
  99. Char1t.ChartAreas["ChartArea1"].AxisX.Maximum = endDateVal.ToOADate();
Add Comment
Please, Sign In to add comment