Available in the Full Version

Data Chart - Series Highlighting (Category)

This sample demonstrates the series highlighting feature which allows you to highlight either an entire series or individual items within a series.
Series type:
2005
1995
Chart Options
Transition Duration
Population data from: Quandl

This sample is designed for a larger screen size.

On mobile, try rotating your screen, view full size, or email to another device.

Code View

Copy to Clipboard
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Series Highlighting</title>

    <!-- Ignite UI for jQuery Required Combined CSS Files -->
    <link href="http://cdn-na.infragistics.com/igniteui/2024.2/latest/css/themes/infragistics/infragistics.theme.css" rel="stylesheet" />
    <link href="http://cdn-na.infragistics.com/igniteui/2024.2/latest/css/structure/infragistics.css" rel="stylesheet" />

    <!--CSS file specific for chart styling -->
    <link href="http://cdn-na.infragistics.com/igniteui/2024.2/latest/css/structure/modules/infragistics.ui.chart.css" rel="stylesheet" />

    <script src="http://ajax.aspnetcdn.com/ajax/modernizr/modernizr-2.8.3.js"></script>
    <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
    <script src="http://code.jquery.com/ui/1.11.1/jquery-ui.min.js"></script>

    <!-- Ignite UI for jQuery Required Combined JavaScript Files -->
    <script src="http://cdn-na.infragistics.com/igniteui/2024.2/latest/js/infragistics.core.js"></script>
    <script src="http://cdn-na.infragistics.com/igniteui/2024.2/latest/js/infragistics.dv.js"></script>

</head>
<body>
    <script type="text/javascript" src="/data-files/uk-france-population.js"></script>

    <script type="text/javascript">
        $(function () {

            var data = [
                { "CountryName": "China", "Pop1995": 1216, "Pop2005": 1297, "Pop2015": 1361, "Pop2025": 1394 },
                { "CountryName": "India", "Pop1995": 920, "Pop2005": 1090, "Pop2015": 1251, "Pop2025": 1396 },
                { "CountryName": "United States", "Pop1995": 266, "Pop2005": 295, "Pop2015": 322, "Pop2025": 351 },
                { "CountryName": "Indonesia", "Pop1995": 197, "Pop2005": 229, "Pop2015": 256, "Pop2025": 277 },
                { "CountryName": "Brazil", "Pop1995": 161, "Pop2005": 186, "Pop2015": 204, "Pop2025": 218 }
            ];

            $("#chart").igDataChart({
                width: "100%",
                height: "400px",
                legend: { element: "lineLegend" },
                title: "Population per Country",
                subtitle: "A comparison of population in 1995 and 2005",
                dataSource: data,
                axes: [
                    {
                        name: "NameAxis",
                        type: "categoryX",
                        label: "CountryName"
                    },
                    {
                        name: "PopulationAxis",
                        type: "numericY",
                        minimumValue: 0,
                        title: "Millions of People",
                    }
                ],
                series: [
                    {
                        name: "2005Population",
                        type: "column",
                        title: "2005",
                        xAxis: "NameAxis",
                        yAxis: "PopulationAxis",
                        valueMemberPath: "Pop2005",
                        isTransitionInEnabled: true,
                        isHighlightingEnabled: true,
                    },
                    {
                        name: "1995Population",
                        type: "column",
                        title: "1995",
                        xAxis: "NameAxis",
                        yAxis: "PopulationAxis",
                        valueMemberPath: "Pop1995",
                        isTransitionInEnabled: true,
                        isHighlightingEnabled: true,
                    }
                ]
            });

            $("#seriesType").change(function (e) {
                var thickness = 5,
                    seriesType = $(this).val();

                if (seriesType == "area" ||
                    seriesType == "splineArea" ||
                    seriesType == "column" ||
                    seriesType == "waterfall" ||
                    seriesType == "stepArea" ||
                    seriesType == "rangeColumn" ||
                    seriesType == "bar" ||
                    seriesType == "point" ||
                    seriesType == "rangeArea") {
                    thickness = 1;
                }

                $("#chart").igDataChart("option", "series", [{ name: "2005Population", remove: true }]);
                $("#chart").igDataChart("option", "series", [{ name: "1995Population", remove: true }]);
                $("#chart").igDataChart("option", "axes", [{ name: "PopulationAxis", remove: true }]);
                $("#chart").igDataChart("option", "axes", [{ name: "NameAxis", remove: true }]);

                if (seriesType == "bar") {
                    $("#chart").igDataChart("option", "axes", [{
                        name: "NameAxis",
                        type: "numericX"
                    }]);
                    $("#chart").igDataChart("option", "axes", [{
                        name: "PopulationAxis",
                        type: "categoryY",
                        minimumValue: 0,
                        label: "CountryName",
                        title: "Millions of People"
                    }]);

                    $("#chart").igDataChart("option", "series", [{
                        type: seriesType,
                        name: "2005Population",
                        title: "2005",
                        xAxis: "NameAxis",
                        yAxis: "PopulationAxis",
                        valueMemberPath: "Pop2005",
                        isTransitionInEnabled: true,
                        isHighlightingEnabled: true,
                        thickness: thickness
                    }]);
                    $("#chart").igDataChart("option", "series", [{
                        type: seriesType,
                        name: "1995Population",
                        title: "1995",
                        xAxis: "NameAxis",
                        yAxis: "PopulationAxis",
                        valueMemberPath: "Pop1995",
                        isTransitionInEnabled: true,
                        isHighlightingEnabled: true,
                        thickness: thickness
                    }]);
                } else {
                    $("#chart").igDataChart("option", "axes", [{
                        name: "NameAxis",
                        type: "categoryX",
                        label: "CountryName"
                    }]);
                    $("#chart").igDataChart("option", "axes", [{
                        name: "PopulationAxis",
                        type: "numericY",
                        minimumValue: 0,
                        title: "Millions of People",
                    }]);

                    if (seriesType == "rangeColumn" || seriesType == "rangeArea") {
                        $("#chart").igDataChart("option", "series", [{
                            type: seriesType,
                            name: "2005Population",
                            title: "2005",
                            highMemberPath: "Pop2005",
                            lowMemberPath: "Pop1995",
                            xAxis: "NameAxis",
                            yAxis: "PopulationAxis",
                            isTransitionInEnabled: true,
                            isHighlightingEnabled: true,
                            thickness: thickness,
                        }]);
                    } else {
                        $("#chart").igDataChart("option", "series", [{
                            type: $(this).val(),
                            name: "2005Population",
                            title: "2005",
                            xAxis: "NameAxis",
                            yAxis: "PopulationAxis",
                            valueMemberPath: "Pop2005",
                            isTransitionInEnabled: true,
                            isHighlightingEnabled: true,
                            thickness: thickness
                        }]);
                        $("#chart").igDataChart("option", "series", [{
                            type: $(this).val(),
                            name: "1995Population",
                            title: "1995",
                            xAxis: "NameAxis",
                            yAxis: "PopulationAxis",
                            valueMemberPath: "Pop1995",
                            isTransitionInEnabled: true,
                            isHighlightingEnabled: true,
                            thickness: thickness
                        }]);
                    }
                }
            });
      
            
            // Transition Duration Slider
            $("#transitionDurationSlider").slider({
                min: 0,
                max: 2000,
                value: 1000,
                step: 50,
                slide: function (event, ui) {
                    $("#chart").igDataChart("option", "highlightingTransitionDuration", ui.value);
                    $("#transitionDurationLabel").text(ui.value);
                }
            });
        });
    </script>

    <style type="text/css">
        
        td { vertical-align: top; }
        .chartElement {
            padding-bottom: 20px;
        }

        .selectionOptions
        {
            margin-bottom: 10px;   
        }
        .sliderBounds {
    	   width: 95px;
    	   margin: 6px 3px 6px 6px;
			display: inline-block;
    	}
    	.optionContainer {
    	   width: 154px;
    	   margin: 2px;
			padding: 2px;
			display: inline-block;
			border: 1px solid #e0e0e0;
			-moz-border-radius: 4px;
			-webkit-border-radius: 4px;
			border-radius: 4px;
    	}
    	.selectBounds {
    	   width: 120px;
    	}
    </style>
    <div class="selectionOptions" >
        Series type:
        <select id="seriesType" class="selectBounds">
            <option value="column" selected="selected">Column</option>
            <option value="area">Area</option>
            <option value="line" >Line</option>
            <option value="splineArea">Spline Area</option>
            <option value="spline">Spline</option>
            <option value="stepArea">Step Area</option>
            <option value="stepLine">Step Line</option>
            <option value="point">Point</option>
            <option value="rangeColumn">Range Column</option>
            <option value="rangeArea">Range Area</option>
            <option value="bar">Bar</option>
        </select>
    </div>

    <table>
        <tr>
            <td id="chart" class="chartElement"/>  
            <td id="lineLegend" style="float: left"/>
        </tr>    
    </table>
    
    <div style="float: left">
        <fieldset id="chartOptions">
            <legend>Chart Options</legend>
            <div class="optionContainer">
                Transition Duration
                <br />
                <div id="transitionDurationSlider" class="sliderBounds"></div>
                <label id="transitionDurationLabel">1000</label>
            </div>
        </fieldset>    
    </div>
    <div style="float: right" class="Quandl-attribution">
        Population data from:
        <a href="http://www.quandl.com/" target="_blank">Quandl</a>
    </div>
</body>
</html>