Toggle navigation Highcharts
  • About Us
    • About Us
    • Job Openings
    • Contact Us
    • News
    • Resellers
  • Home
  • Products
    • Highcharts
    • Highstock
    • Highmaps
    • Mobile
    • Highcharts Cloud
    • Highcharts Editor
    • Wrappers
    • Plugins
  • Demo
    • Highcharts demos
    • Highstock demos
    • Highmaps demo
  • Docs
    • General Documentation
    • API Reference
    • Changelog
    • Roadmap
  • Support
    • Support
    • Download
  • Blog
  • Community
    • Project Showcase
    • Chart Code Showcase
    • Contribute
  • Buy
  • About Us
    • About Us
    • Job Openings
    • Contact Us
    • News
    • Resellers
Highstock .NET 
  • Highcharts .NET
  • Highstock .NET
Demos 
  • Demos
  • API
  • Docs
  • See on NuGet
  • Download 
  • Demo
  • API
  • Docs
  • See on NuGet
  • Download 
Highstock .NET
 Highcharts  Highstock
  • GENERAL
    • Single line series
    • Two panes, candlestick and volume
    • Compare multiple series
    • 52,000 points with data grouping
    • 1,7 million points with async loading
    • Intraday Area
    • Intraday with breaks
    • Intraday Candlestick
    • Flags marking events
    • Dynamically Updated Data
  • CHART TYPES
    • Line with markers and shadow
    • Spline
    • Step line
    • Area
    • Area spline
    • Area range
    • Area spline range
    • Candlestick
    • OHLC
    • Column
    • Column range
    • Point markers only
  • VARIOUS FEATURES
    • Plot lines on Y axis
    • Plot bands on Y axis
    • Reversed Y axis
    • Styled scrollbar
    • Disabled scrollbar
    • Disabled navigator
  • FLAGS
    • Flags placement
    • Flags shapes and colors
list

Controller Code

using Highsoft.Web.Mvc.Stocks;
using MVC_Demo.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.Mvc;

namespace MVC_Demo.Areas.Highstock.Controllers.Shared
{
    public partial class SharedController : Controller
    {
        public ActionResult IntradayAreaBreaks()
        {
            List<AreaSeriesData> intradayData = new List<AreaSeriesData>();

            using (var db = new HighstockDataEntities())
            {
                foreach (Intraday data in db.Intradays)
                {
                        intradayData.Add(new AreaSeriesData
                            {                                
                                Y = Convert.ToDouble(data.High),
                                X = Convert.ToDouble(data.Date)
                            }
                        );
                }
            }

            ViewBag.IntradayData = intradayData.OrderBy(o => o.X).ToList();

            return View(ViewBag);
        }      

    }
}

Controller Code

@using Highsoft.Web.Mvc.Stocks
@using Highsoft.Web.Mvc.Stocks.Rendering

<script src="https://code.highcharts.com/stock/highstock.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>

@{ var chartOptions =
      new Highstock
      {
          Title = new Title
          {
              Text = "AAPL stock price by minute"
          },
          Subtitle = new Subtitle
          {
              Text = "Using explicit breaks for nights and weekends"
          },
          XAxis = new List<XAxis>
              {
                new XAxis()
                {
                    Breaks = new XAxisBreaks()
                    {
                        From = (long)(new DateTime(2011, 9, 6,16,0,0) - new DateTime(1970, 1, 1)).TotalMilliseconds,
                        To = (long)(new DateTime(2011, 9, 7, 8,0,0) - new DateTime(1970, 1, 1)).TotalMilliseconds,

                        Repeat = 24 * 3600 *1000,
                        BreakSize = 3600 *1000
            },
        }
                      },
             RangeSelector = new RangeSelector()
          {
              Buttons = new List<RangeSelectorButton>() { new RangeSelectorButton { Type = "minute", Count = 60, Text = "1h" }, new RangeSelectorButton { Type = "day", Count = 1, Text = "1d" }, new RangeSelectorButton { Type = "all", Count = 1, Text = "All" } },
              InputEnabled = false,
              Selected = 1
          },
          Series = new List<Series>
              {
                new AreaSeries
                {
                    Data = ViewBag.IntradayData as List<AreaSeriesData>,
                    Name = "AAPL",
                    GapSize = 5,
                    Tooltip = new AreaSeriesTooltip
                    {
                        ValueDecimals = 2
                    },
                    TurboThreshold = 10000,
                    FillColor = @ViewBag.fillColor
                }
                              }
      };

    chartOptions.ID = "chart";
    var renderer = new HighstockRenderer(chartOptions);
}

@Html.Raw(renderer.RenderHtml())
© 2023 All rights reserved.