Quebec Major Junior Hockey League
The Quebec Major Junior Hockey League (French: la Ligue de hockey junior majeur du Québec, shortened as QMJHL in English, LHJMQ in French) is one of the three major junior ice hockey leagues which make up the Canadian Hockey League. Because the name of the league is so long, it is sometimes called the "Q".
Current season or competition: 2020–21 QMJHL season | |
Sport | Ice hockey |
---|---|
Founded | 1969 |
No. of teams | 18 |
Country(ies) | Canada |
Most recent champion(s) | Rouyn-Noranda Huskies (2) |
Most championships | Gatineau Olympiques (7) |
TV partner(s) | Sportsnet Sportsnet One EastLink TV TVA Sports |
Official website | theqmjhl |
There are 18 teams in the QMJHL that are in Quebec, New Brunswick, Nova Scotia, and Prince Edward Island in Canada. The winner of the QMJHL plays against the winners of the Western Hockey League and Ontario Hockey League for the Memorial Cup. Many good players go from the QMJHL to the National Hockey League, and nine players from the QMJHL are in the Hockey Hall of Fame.
History
The QMJHL was created in 1969 from two different junior leagues in Quebec, the Quebec Junior Hockey League and the Metropolitan Montreal Junior Hockey League. These two teams wanted to make a better junior league for the province, so combined teams from their leagues. Eight teams were from the QJHL and two from the MMJHL and another team came from a town in Ontario on the Ontario-Quebec border. Nearly every team was within a close distance of Montreal, the largest city in Quebec, though no team played in Montreal.
In 1972 the QMJHL finally wanted a team in Montreal, and tried to get the Montreal Junior Canadiens, who played in the Ontario Hockey Association, to join. The OHA made a deal with the QMJHL and gave them the Junior Canadiens while creating a new team in a different city to keep an OHA team with the same name.
Member teams
2020–21 Quebec Major Junior Hockey League |
<graph>
{ // // ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Street_map_with_marks // Please do not modify it anywhere else, as it may get copied and override your changes. // Suggestions can be made at https://www.mediawiki.org/wiki/Template_talk:Graph:Street_map_with_marks // // Template translation is in https://commons.wikimedia.org/wiki/Data:Original/Template:Graphs.tab // "version": 2, "width":, "height": , "padding": 0, "signals":[ // These signals allow us to quickly move the map within the image, e.g. to leave space for the legend {"name":"legendWidth", "init": {"expr": "0"} }, {"name":"legendHeight", "init": {"expr": "height"} }, {"name":"imgWidth", "init": {"expr": "width-legendWidth"} }, {"name":"imgHeight", "init": {"expr": "height"} }, {"name":"imgXC", "init": {"expr": "imgWidth/2"} }, {"name":"imgYC", "init": {"expr": "imgHeight/2"} }, {"name":"imgTileSize", "init": {"expr": "256"} }, {"name":"imgLat", "init": {"expr": "46.80"} }, {"name":"imgLon", "init": {"expr": "-70.0"} }, {"name":"imgZoom", "init": {"expr": ""} }, {"name":"picWidth", "init": {"expr": "180"} }, {"name":"picHeight", "init": {"expr": "picWidth/2"} }, {"name":"picXC", "init": {"expr": "imgWidth-(picWidth/2)"} }, {"name":"picYC", "init": {"expr": "imgHeight-(picHeight/2)"} }, {"name":"showMiniMap", "init": {"expr": "0"} } ], "data": [ { "name": "data", // Otherwise use the first unnamed argument for source values "values": [ { "lat": 46.80, "lon": -70.0, "img": "wikirawupload:https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Mapscaleline.svg/120px-Mapscaleline.svg.png", "width": 50, "height": 8, "offsetX": Expression error: Unexpected / operator., "offsetY": Expression error: Unexpected / operator., "textAlign": "right", "textDx": 22, "textDy": -2, "textColor": "grey", "textFont": "Tahoma", "textFontSize": 9, "text": "10 000km" } , { "lat": 45.6314, "lon": -73.8586, Expression error: Unexpected = operator. "text": "", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" }, { "lat": 45.6314, "lon": -73.8586, "shape": "circle", "size": "0", "text": "Blainville-", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" }, { "lat": 45.6314, "lon": -73.8586, "shape": "circle", "size": "0", "text": "Boisbriand", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" } , { "lat": 45.8836, "lon": -72.4931, Expression error: Unexpected = operator. "text": "Drummondville", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" } , { "lat": 45.4342, "lon": -75.7247, Expression error: Unexpected = operator. "text": "Gatineau", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" } , { "lat": 48.2467, "lon": -79.0189, Expression error: Unexpected = operator. "text": "Rouyn-Noranda", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" } , { "lat": 45.4106, "lon": -71.8833, Expression error: Unexpected = operator. "text": "Sherbrooke", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" } , { "lat": 48.1053, "lon": -77.7853, Expression error: Unexpected = operator. "text": "Val-d'Or", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#FF0000" } , { "lat": 49.2103, "lon": -68.1628, Expression error: Unexpected = operator. "text": "Baie-Comeau", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#0000FF" } , { "lat": 48.4197, "lon": -71.0600, Expression error: Unexpected = operator. "text": "Chicoutimi", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#0000FF" } , { "lat": 46.8290, "lon": -71.2480, Expression error: Unexpected = operator. "text": "Quebec", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#0000FF" } , { "lat": 48.4417, "lon": -68.5203, Expression error: Unexpected = operator. "text": "Rimouski", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#0000FF" } , { "lat": 46.5418, "lon": -72.7455, Expression error: Unexpected = operator. "text": "Shawinigan", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#0000FF" } , { "lat": 46.0569, "lon": -71.9447, Expression error: Unexpected = operator. "text": "Victoriaville", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#0000FF" } , { "lat": 47.6286, "lon": -65.6809, Expression error: Unexpected = operator. "text": "Acadie–Bathurst", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#008000" } , { "lat": 46.1375, "lon": -60.1903, Expression error: Unexpected = operator. "text": "Cape Breton", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#008000" } , { "lat": 46.2456, "lon": -63.1172, Expression error: Unexpected = operator. "text": "Charlottetown", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#008000" } , { "lat": 44.6483, "lon": -63.5767, Expression error: Unexpected = operator. "text": "Halifax", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#008000" } , { "lat": 46.0962, "lon": -64.8289, Expression error: Unexpected = operator. "text": "Moncton", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#008000" } , { "lat": 45.2761, "lon": -66.0642, Expression error: Unexpected = operator. "text": "Saint John", "textAlign": "right", "textBaseline": "middle", "textDx": 0, "textDy": 1, "textFontSize": , "textColor": "#008000" } ], "transform": [ { "type": "geo", "projection": "mercator", "scale": {"expr": "imgTileSize/PI/2*pow(2,imgZoom)"}, "translate": [{"expr": "imgXC"}, {"expr": "imgYC"}], "center": [{"expr": "imgLon"}, {"expr": "imgLat"}], "lon": "lon", "lat": "lat" }, { "type": "formula", "field":"layout_x", "expr": "datum.layout_x + (datum.offsetX || 0)" }, { "type": "formula", "field":"layout_y", "expr": "datum.layout_y + (datum.offsetY || 0)" }, { "type": "formula", "field":"color", "expr": "datum.color || '#c33'" }, { "type": "formula", "field":"textColor", "expr": "datum.textColor || datum.color" }, { "type": "formula", "field":"strokeColor", "expr": "datum.strokeColor || '#ffe7e6'" } ] }, { // Hack: single value data source for drawing/hiding images and other non-series elements "name": "dummyData", "values": [{}] } ], // Legend only works if showLegend and colorScaleField are set "marks": [ { "type": "image", "from": { "data": "dummyData", "transform": [ { "type": "formula", "field":"url", "expr": "'mapsnapshot:///?width='+imgWidth+'&height='+imgHeight+'&zoom='+imgZoom+'&lat='+imgLat+'&lon='+imgLon" } ] }, "properties": { "enter": { "url": {"field": "url"}, "xc": {"signal": "imgXC"}, "yc": {"signal": "imgYC"}, "width": {"signal": "imgWidth"}, "height": {"signal": "imgHeight"} } } }, { // Places an image of a given name and size at the [lan,lon] location "type": "image", "from": { "data": "data", "transform": [ { "type": "filter", "test": "datum.img" }, { "type": "formula", "field":"iconWidth", "expr": "datum.width || 0" }, { "type": "formula", "field":"iconHeight", "expr": "datum.height || 0" }, { "type": "formula", "field":"img", "expr": "if(!test(/^[a-z]+:\\/\\//, datum.img), 'wikifile:///'+datum.img, datum.img)" }, // Ensure that either width or height parameter is passed to wikifile:// request { "type": "formula", "field":"img", "expr": "if((datum.iconWidth || datum.iconHeight) && !test(/[?&](width|height)=\\d/, datum.img),if(datum.iconWidth,datum.img+'?width='+datum.iconWidth,datum.img+'?height='+datum.iconHeight), datum.img)" } ]}, "properties": { "enter": { "url": {"field": "img"}, "xc": {"field": "layout_x"}, "yc": {"field": "layout_y"}, "width": {"field": "iconWidth"}, "height": {"field": "iconHeight"} } } }, { // Draw marks of a given color, shape, and size at the [lan,lon] location "type": "symbol", "from": { "data": "data", "transform": [{ "type": "filter", "test": "!datum.img" }] }, "properties": { "enter": { "x": {"field": "layout_x"}, "y": {"field": "layout_y"}, // If colorScaleField is set, use color scaling, otherwise use the preset color value "fill": { "field": "color" }, "size": {"field": "size"}, "shape": {"field": "shape"}, "stroke": {"field": "strokeColor"} } } }, { // Draw text with the given color and size at the [lan,lon] location // See https://github.com/vega/vega/wiki/Marks#text for all parameter description (prepend "text" and capitalize them) "type": "text", "from": { "data": "data", "transform": [ { "type": "filter", "test": "datum.text" }, // Figure out if this is an LTR or RTL page. For LTR, show label to the right of the icon, left-aligned. For RTL, reverse. { "type": "formula", "field":"isLTR", "expr": "'' == '\\u200E'" }, // If these values are not defined ("undefined" is not allowed, so test for truthiness and not 0) { "type": "formula", "field":"textDx", "expr": "if(!datum.textDx && datum.textDx != 0, if(datum.isLTR,8,-8), datum.textDx)" }, { "type": "formula", "field":"textAlign", "expr": "if(!datum.textAlign, if(datum.isLTR,'left','right'), datum.textAlign)" }, { "type": "formula", "field":"textBaseline", "expr": "datum.textBaseline || 'middle'" } ]}, "properties": { "enter": { "text": {"field": "text"}, "x": {"field": "layout_x" }, "y": {"field": "layout_y"}, "dx": {"field": "textDx" }, "dy": {"field": "textDy"}, "fill": {"field": "textColor"}, "align": {"field": "textAlign"}, "baseline": {"field": "textBaseline"}, "radius": {"field": "textRadius"}, "theta": {"field": "textTheta"}, "angle": {"field": "textAngle"}, "font": {"field": "textFont"}, "fontSize": {"field": "textFontSize"}, "fontWeight": {"field": "textFontWeight"}, "fontStyle": {"field": "textFontStyle"} } } }, { // Draw a low-zoom locator map frame "type": "rect", "from": { "data": "dummyData", "transform": [ { "type": "filter", "test": "showMiniMap" } ] }, "properties": { "enter": { "xc": {"signal": "picXC"}, "yc": {"signal": "picYC"}, "width": {"signal": "picWidth", "offset":2}, "height": {"signal": "picHeight"}, "stroke": {"value":"#fff"},"strokeWidth": {"value":6} } } }, { // Draw a low-zoom locator map by using a premade world map image "type": "image", "from": { "data": "dummyData", "transform": [ { "type": "filter", "test": "showMiniMap" }, { "type": "formula", "field":"url", "expr": "1" } ] }, "properties": { "enter": { "url": {"value": "wikirawupload:"}, "xc": {"signal": "picXC"}, "yc": {"signal": "picYC"}, "width": {"signal": "picWidth"}, "height": {"signal": "picHeight"} } } }, { // Draw a zoom-out mark at the [lan,lon] location "type": "symbol", "from": { "data": "dummyData", "transform": [ { "type": "filter", "test": "showMiniMap" }, { "type": "formula", "field":"lat", "expr": "imgLat" }, { "type": "formula", "field":"lon", "expr": "imgLon" }, { "type": "geo", "projection": "equirectangular", "scale": {"expr": "180/2/PI"}, "translate": [{"expr": "picXC"}, {"expr": "picYC"}], "center": [{"expr": "0"}, {"expr": "0"}], "lon": "lon", "lat": "lat" } ] }, "properties": { "enter": { "x": {"field": "layout_x"}, "y": {"field": "layout_y"}, "fill": {"value": "#c33"}, "stroke": {"value": "#ffe7e6"}, "size": {"value": 40} } } } ] } </graph> |
Location of teams for the 2019–20 QMJHL season. West Division East Division Maritimes Division |