Table of Contents

Introduction
   Overview

   What this Book Includes
   Is This Book for You?
   What Do You Need to Use This Book?
   How the Book Is Organized
   Using Code Examples
   Customer Support

Chapter 1 Overview of ASP.NET Core MVC
   New Features in ASP.NET Core MVC

   Your First Web Application

      Creating a New MVC Project
      Creating Database Model
      Register Context with Dependency Injection
      Initializing Database
      Adding Tickers to Database
      Adding Index Data to Database
      Checking Database
      Creating a Controller and Views
   CRUD Operations

      The Details Page
      The Create Page
      The Edit Page
      The Delete Page
   Stock Data from Yahoo Finance

      Helper Method
      Creating ViewModel
      DownloadPrice Action Method
      DownloadPrice View
   Existing Database

      Creating Model from Database
      Registering Context
      Creating a Controller
      Configure and Update Views

Chapter 2 Graphics Basics in SVG
   2D Coordinate System in SVG

      ViewPort
      Default User Coordinates
      Custom Coordinates
   Basic Shapes in SVG

      Lines
      Rectangles
      Circles and Ellipses
      Polygons
      Polylines
      Fill Rules
      Paths and Curves
   2D Transformation in SVG

      Group and Use Elements
      Translation
      Scaling
      Rotation
      Skew
      View Box
   Colors and Paints

      Colors
      Linear Gradient
      Radial Gradient
      Colormaps
   Tiles and Textures

      Grid Pattern Tiles
      Resizable Pattern Tiles
      Clip Paths
      Pattern Transformation

Chapter 3 Dynamic SVG Graphics with D3
   D3 Basics

      Install D3 Package
      Creating SVG Elements
      Transformations
      Animations
   Creating Graphics with Data

      Data Array
      JSON Data
      Data from Mathematical Functions
      Data from Server
   Scale and Colors

      D3 Scale
      Categorical Colors
      Colormaps

Chapter 4 2D Charts with D3
   Chart Elements

      Chart Layout
      Axes
        Basic Axes
        Time Axes
        Custom Axes
      Gridlines
      Title and Labels
   Line Charts

      Simple Line Charts
        Input Data
        Chart Function
        Creating a Simple Line Chart
      Multiple Line Charts
        Chart Function
        Input Data
        Creating a Chart with Multiple Curves
      Line Charts with Two Y Axes
        Why You Need Two Y Axes
        Functions with Two Y Axes
        Input Data
        Creating a Chart with Two Y Axes
   Specialized Charts

      Bar Charts
        Axes and Gridlines for Bar Charts
        Bar Chart Function
        Input Data
        Creating a Vertical Bar Chart
        Creating Group Bar Charts
      Stair-Step Charts
      Area Charts
      Polar Charts
      Pie Charts

Chapter 5 2D Charts with Chart Libraries
   Charts with Chart.JS

      Installing Chart.JS Library
      Line Charts
      Scatter Line Charts
      Polar Area and Pie Charts
   Google Charts API

      Getting Started
        Using DataTable
        Using Data Array
        Using JSON Data
      Data from Server
        Data Array from Server
        JSON String from Server
      Basic Charts
        Line Charts
        Bar Charts
        Area Charts
        Interval Charts
      Interacting with Charts
        Resizing
        Zooming and Panning
        Animation
        Dashboard

Chapter 6 Stock Charts
   Get Stock Data

   Stock Charts with Google Charts

      Stock Data in JSON Format
      Stock Charts
      Custom Stock Charts
      Chart Range Filter
   Stock Charts with TechanJS

      Stock Data
      Helper Functions
      Stock Charts
      Zooming and Panning Stock Charts
      Stock Charts with Crosshair
      Combination Charts and Indicators
        Price and Volume Charts
        Moving Averages and Bollinger Bands
        MACD and RSI
        Creating Charts

Chapter 7 3D Graphics with WebGL
   WebGL Basics

      3D Rendering
        Canvas and Drawing Context
        Vertex Buffers
        Transform Matrices
        Shaders
      Drawing a Triangle
   Helper Functions

      Drawing Context
      Transform Matrices
      Shader Functions
      Drawing Functions
   Creating Objects Using Helper Functions

      Color Triangle
      Squares
      Triangle Strip
      Animated Cube

Chapter 8 3D Graphics with Three.js
   Three.js Basics

      Triangle in Three.js
        Set the Scene
        Rendering the Scene
      3D Coordinates and Gridlines
   Camera

      Perspective Camera
      Orthographic Camera
      Testing Cameras
   Materials

      Basic Materials
      Normal Materials
      Lambert Materials
      Phong Materials
      Standard Materials
   Lights

      Ambient Lights
      Spot Lights
      Point Lights
      Directional Lights
   Geometries

      Base Geometries
      Built-In Geometries
        2D Geometries
        3D Geometries
      Parametric Geometries
   Textures


Chapter 9 3D Charts
   Client-Side 3D Charts

      Simple 3D Surfaces
      Parametric Surfaces
   Using Server Data

      Custom Geometry
      3D Charts with Server Data
      Custom Geometry with UV Mapping
      3D Charts with Server Data and UV Mapping
   Graph3d Library

      Creating Simple 3D Surfaces
      Graph Styles
      Using Server Data

Chapter 10 Charts with Web API
   Web API for 3D Charts

      Model and Repository
      Web API Controller
      Testing Web API Services
      Using API Controller in MVC Applications
   3D Charts for European Options

      Pricing European Options
      Model and Repository
      Web API Controller
      Creating Option Charts
        Price Charts
        Delta Charts
        Gamma Charts
        Theta
        Rho Charts
        Vega Charts
   Stock Charts

      Model
      Web API Controller
      Creating Stock Charts
   Scatter Charts for Indices

      Model
      Web API Controller
      Creating Scatter Charts

Index