Backend API
x
<div id="chart-demo"> (Html.DevExtreme().Chart() .ID("chart") .Title("Weather in Las Vegas, NV (2017)") .CommonSeriesSettings(s => s.ArgumentField("Date")) .ArgumentAxis(a => { a.ArgumentType(ChartDataType.DateTime); a.AggregationInterval(VizTimeInterval.Week); a.ValueMarginsEnabled(false); }) .ValueAxis(a => { a.Add() .Name("temperature") .Title(t => t.Text("Temperature, °C").Font(f => f.Color("#e91e63"))) .Label(l => l.Font(f => f.Color("#e91e63"))); a.Add() .Name("precipitation") .Position(Position.Right) .Title(t => t.Text("Precipitation, mm").Font(f => f.Color("#03a9f4"))) .Label(l => l.Font(f => f.Color("#03a9f4"))); }) .Legend(l => l.Visible(false)) .Series(s => { s.Add() .Axis("precipitation") .Color("#03a9f4") .Type(SeriesType.Bar) .ValueField("Precip") .Name("Precipitation"); s.Add() .Axis("temperature") .Color("#ffc0bb") .Type(SeriesType.RangeArea) .RangeValue1Field("MinTemp") .RangeValue2Field("MaxTemp") .Aggregation(a => { a.Enabled(true); a.Method(ChartSeriesAggregationMethod.Custom); a.Calculate(<text> function(aggregationInfo, series) { if(!aggregationInfo.data.length) { return; } var temp = aggregationInfo.data.map(function(item) { return item.Temp; }), maxTemp = Math.max.apply(null, temp), minTemp = Math.min.apply(null, temp); return { Date: new Date((aggregationInfo.intervalStart.valueOf() + aggregationInfo.intervalEnd.valueOf()) / 2), MaxTemp: maxTemp, MinTemp: minTemp }; } </text>); }) .Name("Temperature range"); s.Add() .Axis("temperature") .Color("#e91e63") .ValueField("Temp") .Point(p => p.Size(7)) .Aggregation(a => a.Enabled(true)) .Name("Average temperature"); }) .Tooltip(t => { t.Enabled(true); t.CustomizeTooltip(<text> function(arg) { return customTooltipHandlers[arg.seriesName](arg, arg.point.aggregationInfo); } </text>); }) .DataSource(d => d.Mvc().LoadAction("GetWeatherIndicators")) ) <div class="options"> <div class="caption">Options</div> <div class="option"> (Html.DevExtreme().CheckBox() .Text("Aggregation enabled") .Value(true) .OnValueChanged(<text> function(data) { var chart = $("#chart").dxChart("instance"); chart.option("series[1].aggregation.enabled", data.value); chart.option("series[2].aggregation.enabled", data.value); } </text>) ) </div> <div class="option"> <span>Interval:</span> (Html.DevExtreme().SelectBox() .DataSource(new JS("intervals")) .Value(VizTimeInterval.Week) .ValueExpr("Interval") .InputAttr("aria-label", "Interval") .DisplayExpr("DisplayName") .OnValueChanged(<text> function (data) { $("#chart").dxChart("instance").option("argumentAxis.aggregationInterval", data.value); } </text>) ) </div> <div class="option"> <span>Method:</span> (Html.DevExtreme().SelectBox() .DataSource(new[] { new { DisplayName = "Average", Func = "avg" }, new { DisplayName = "Minimum", Func = "min" }, new { DisplayName = "Maximum", Func = "max" } }) .Value(ChartSeriesAggregationMethod.Avg) .ValueExpr("Func") .InputAttr("aria-label", "Function") .DisplayExpr("DisplayName") .OnValueChanged(<text> function (data) { $("#chart").dxChart("instance").option("series[2].aggregation.method", data.value); } </text>) ) </div> </div></div><script> var intervals = [{ DisplayName: "One week", Interval: "week" }, { DisplayName: "Two weeks", Interval: { weeks: 2 } }, { DisplayName: "Month", Interval: "month" }]; var customTooltipHandlers = { "Average temperature": function (arg, aggregationInfo) { var start = aggregationInfo && aggregationInfo.intervalStart, end = aggregationInfo && aggregationInfo.intervalEnd; return { text: (!aggregationInfo ? "Date: " + arg.argument.toDateString() : "Interval: " + start.toDateString() + " - " + end.toDateString()) + "<br/>Temperature: " + arg.value.toFixed(2) + " °C" }; }, "Temperature range": function (arg, aggregationInfo) { var start = aggregationInfo.intervalStart, end = aggregationInfo.intervalEnd; return { text: "Interval: " + start.toDateString() + " - " + end.toDateString() + "<br/>Temperature range: " + arg.rangeValue1 + " - " + arg.rangeValue2 + " °C" }; }, "Precipitation": function (arg) { return { text: "Date: " + arg.argument.toDateString() + "<br/>Precipitation: " + arg.valueText + " mm" }; } };</script>xxxxxxxxxxusing DevExtreme.AspNet.Data;using DevExtreme.AspNet.Mvc;using DevExtreme.NETCore.Demos.Models;using DevExtreme.NETCore.Demos.Models.SampleData;using Microsoft.AspNetCore.Mvc;using System;using System.Collections.Generic;using System.Linq;namespace DevExtreme.NETCore.Demos.Controllers { public class ChartsController : Controller { public ActionResult PointsAggregation() { return View(); } [HttpGet] public object GetWeatherIndicators() { return SampleData.WeatherIndicators; } }}xxxxxxxxxxusing System;namespace DevExtreme.NETCore.Demos.Models { public class WeatherIndicator { public DateTime Date { get; set; } public double Temp { get; set; } public double Precip { get; set; } }}xxxxxxxxxxusing System;using System.Collections.Generic;namespace DevExtreme.NETCore.Demos.Models.SampleData { public partial class SampleData { public static readonly IEnumerable<WeatherIndicator> WeatherIndicators = new[] { new WeatherIndicator { Date = DateTime.Parse("2017-01-01"), Temp = 9.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-02"), Temp = 8, Precip = 0.4 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-03"), Temp = 7.5, Precip = 0.2 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-04"), Temp = 8.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-05"), Temp = 10, Precip = 0.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-06"), Temp = 3, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-07"), Temp = 5, Precip = 0.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-08"), Temp = 9.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-09"), Temp = 11, Precip = 0.5 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-10"), Temp = 8, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-11"), Temp = 11.5, Precip = 0.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-12"), Temp = 9.5, Precip = 2.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-13"), Temp = 11.5, Precip = 3.5 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-14"), Temp = 11, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-15"), Temp = 10.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-16"), Temp = 6.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-17"), Temp = 7.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-18"), Temp = 8, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-19"), Temp = 8.5, Precip = 1.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-20"), Temp = 5.5, Precip = 5.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-21"), Temp = 9, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-22"), Temp = 6, Precip = 16.6 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-23"), Temp = 8.5, Precip = 5.5 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-24"), Temp = 6.5, Precip = 1.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-25"), Temp = 4.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-26"), Temp = 5.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-27"), Temp = 3, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-28"), Temp = 6.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-29"), Temp = 8, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-30"), Temp = 10.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-01-31"), Temp = 13, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-01"), Temp = 10.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-02"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-03"), Temp = 13, Precip = 0.2 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-04"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-05"), Temp = 11.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-06"), Temp = 11.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-07"), Temp = 12.5, Precip = 0.5 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-08"), Temp = 13, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-09"), Temp = 15.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-10"), Temp = 16.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-11"), Temp = 14.5, Precip = 0.8 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-12"), Temp = 13.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-13"), Temp = 13.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-14"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-15"), Temp = 13.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-16"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-17"), Temp = 12.5, Precip = 4.5 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-18"), Temp = 10, Precip = 14.4 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-19"), Temp = 13.5, Precip = 0.5 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-20"), Temp = 14, Precip = 0.6 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-21"), Temp = 15, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-22"), Temp = 11, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-23"), Temp = 7.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-24"), Temp = 6, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-25"), Temp = 7, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-26"), Temp = 8, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-27"), Temp = 8.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-02-28"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-01"), Temp = 9, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-02"), Temp = 11, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-03"), Temp = 15, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-04"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-05"), Temp = 12.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-06"), Temp = 7.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-07"), Temp = 11, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-08"), Temp = 16, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-09"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-10"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-11"), Temp = 20.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-12"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-13"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-14"), Temp = 23.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-15"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-16"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-17"), Temp = 22.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-18"), Temp = 23.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-19"), Temp = 24, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-20"), Temp = 23.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-21"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-22"), Temp = 18.5, Precip = 4 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-23"), Temp = 15, Precip = 2.4 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-24"), Temp = 20.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-25"), Temp = 19, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-26"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-27"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-28"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-29"), Temp = 21, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-30"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-03-31"), Temp = 16.5, Precip = 0.2 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-01"), Temp = 19, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-02"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-03"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-04"), Temp = 16.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-05"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-06"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-07"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-08"), Temp = 19, Precip = 0.2 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-09"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-10"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-11"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-12"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-13"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-14"), Temp = 19, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-15"), Temp = 21, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-16"), Temp = 22.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-17"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-18"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-19"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-20"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-21"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-22"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-23"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-24"), Temp = 25, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-25"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-26"), Temp = 23.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-27"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-28"), Temp = 19, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-29"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-04-30"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-01"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-02"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-03"), Temp = 25.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-04"), Temp = 28, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-05"), Temp = 28.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-06"), Temp = 27, Precip = 0.4 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-07"), Temp = 17, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-08"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-09"), Temp = 20, Precip = 1.7 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-10"), Temp = 19.5, Precip = 0.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-11"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-12"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-13"), Temp = 22.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-14"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-15"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-16"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-17"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-18"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-19"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-20"), Temp = 24, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-21"), Temp = 27.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-22"), Temp = 29, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-23"), Temp = 30.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-24"), Temp = 31, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-25"), Temp = 29.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-26"), Temp = 27, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-27"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-28"), Temp = 29, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-29"), Temp = 30.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-30"), Temp = 31.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-05-31"), Temp = 29.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-01"), Temp = 28, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-02"), Temp = 30, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-03"), Temp = 32.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-04"), Temp = 32, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-05"), Temp = 31.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-06"), Temp = 33, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-07"), Temp = 32.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-08"), Temp = 31.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-09"), Temp = 31.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-10"), Temp = 29, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-11"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-12"), Temp = 21, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-13"), Temp = 25, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-14"), Temp = 30.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-15"), Temp = 32, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-16"), Temp = 34.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-17"), Temp = 36, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-18"), Temp = 36, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-19"), Temp = 37.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-20"), Temp = 39, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-21"), Temp = 38, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-22"), Temp = 37.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-23"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-24"), Temp = 37.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-25"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-26"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-27"), Temp = 34, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-28"), Temp = 34, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-29"), Temp = 37.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-06-30"), Temp = 35, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-01"), Temp = 37.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-02"), Temp = 35.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-03"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-04"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-05"), Temp = 39, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-06"), Temp = 39.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-07"), Temp = 40, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-08"), Temp = 39, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-09"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-10"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-11"), Temp = 36.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-12"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-13"), Temp = 38, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-14"), Temp = 39.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-15"), Temp = 40, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-16"), Temp = 38.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-17"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-18"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-19"), Temp = 34, Precip = 0.4 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-20"), Temp = 34.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-21"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-22"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-23"), Temp = 38, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-24"), Temp = 34, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-25"), Temp = 34, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-26"), Temp = 33.5, Precip = 0.2 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-27"), Temp = 36, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-28"), Temp = 38, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-29"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-30"), Temp = 37.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-07-31"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-01"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-02"), Temp = 35.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-03"), Temp = 33.5, Precip = 0.9 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-04"), Temp = 32, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-05"), Temp = 33.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-06"), Temp = 34, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-07"), Temp = 33.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-08"), Temp = 35.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-09"), Temp = 36, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-10"), Temp = 35.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-11"), Temp = 35, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-12"), Temp = 35.5, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-13"), Temp = 34, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-14"), Temp = 32.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-15"), Temp = 30, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-16"), Temp = 31, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-17"), Temp = 33.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-18"), Temp = 34.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-19"), Temp = 34, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-20"), Temp = 33, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-21"), Temp = 32, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-22"), Temp = 32.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-23"), Temp = 33, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-24"), Temp = 33, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-25"), Temp = 33.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-26"), Temp = 36, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-27"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-28"), Temp = 37, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-29"), Temp = 36.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-30"), Temp = 36, Precip = 0.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-08-31"), Temp = 33.5, Precip = 0.3 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-01"), Temp = 33.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-02"), Temp = 34.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-03"), Temp = 34, Precip = 0.1 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-04"), Temp = 29.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-05"), Temp = 33, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-06"), Temp = 32, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-07"), Temp = 32, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-08"), Temp = 28, Precip = 1.7 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-09"), Temp = 23, Precip = 7.6 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-10"), Temp = 29, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-11"), Temp = 32, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-12"), Temp = 31, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-13"), Temp = 30.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-14"), Temp = 26, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-15"), Temp = 23.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-16"), Temp = 24.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-17"), Temp = 25, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-18"), Temp = 26.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-19"), Temp = 24.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-20"), Temp = 24.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-21"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-22"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-23"), Temp = 15.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-24"), Temp = 17.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-25"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-26"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-27"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-28"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-29"), Temp = 24, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-09-30"), Temp = 25, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-01"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-02"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-03"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-04"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-05"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-06"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-07"), Temp = 23, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-08"), Temp = 24, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-09"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-10"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-11"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-12"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-13"), Temp = 21, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-14"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-15"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-16"), Temp = 20.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-17"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-18"), Temp = 21.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-19"), Temp = 22.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-20"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-21"), Temp = 15, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-22"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-23"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-24"), Temp = 20.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-25"), Temp = 21, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-26"), Temp = 22, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-27"), Temp = 20, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-28"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-29"), Temp = 21, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-30"), Temp = 19.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-10-31"), Temp = 17.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-01"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-02"), Temp = 15, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-03"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-04"), Temp = 16.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-05"), Temp = 12.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-06"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-07"), Temp = 14, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-08"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-09"), Temp = 16.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-10"), Temp = 16, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-11"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-12"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-13"), Temp = 16.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-14"), Temp = 14.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-15"), Temp = 16.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-16"), Temp = 15, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-17"), Temp = 17, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-18"), Temp = 8.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-19"), Temp = 11, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-20"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-21"), Temp = 15.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-22"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-23"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-24"), Temp = 18, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-25"), Temp = 18.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-26"), Temp = 17.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-27"), Temp = 13, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-28"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-29"), Temp = 12.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-11-30"), Temp = 11.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-01"), Temp = 14, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-02"), Temp = 13.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-03"), Temp = 13.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-04"), Temp = 4.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-05"), Temp = 5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-06"), Temp = 7, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-07"), Temp = 6.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-08"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-09"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-10"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-11"), Temp = 10.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-12"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-13"), Temp = 12.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-14"), Temp = 9, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-15"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-16"), Temp = 8, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-17"), Temp = 6, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-18"), Temp = 7.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-19"), Temp = 9.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-20"), Temp = 8.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-21"), Temp = 3, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-22"), Temp = 4, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-23"), Temp = 6, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-24"), Temp = 8, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-25"), Temp = 10, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-26"), Temp = 11, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-27"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-28"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-29"), Temp = 13.5, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-30"), Temp = 12, Precip = 0 }, new WeatherIndicator { Date = DateTime.Parse("2017-12-31"), Temp = 11, Precip = 0 } }; }}xxxxxxxxxx#chart-demo { height: 700px; width: 100%;}#chart { height: 500px; margin: 0 0 15px;}.options { padding: 20px; margin-top: 20px; background-color: rgba(191, 191, 191, 0.15);}.caption { font-size: 18px; font-weight: 500;}.option { margin-top: 10px;}.option > span { width: 50px; display: inline-block; margin-right: 10px;}.option > .dx-selectbox { display: inline-block; vertical-align: middle;}