This site is supported by donations to The OEIS Foundation.
Template:Vertical bar graph
From OeisWiki
[<Purge> Template:Vertical bar graph]
The {{Vertical bar graph}}/{{Histogram}} graphic template can be used to create a vertical bar graph/histogram (will it be in a format which can be parsed by text-based web browsers?) The vertical bar graph/histogram may have data entries for data0 to data256. Note that {{Vertical bar graph from lists}}/{{Histogram from lists}} is more convenient than {{Vertical bar graph}}/{{Histogram}} to generate vertical bar graphs/histograms.
A vertical bar graph may display either positive or negative real ordinates, corresponding to discrete values of the abscissae, which makes it a convenient tool to display integer (also rational and real) sequences.
Since a histogram is a vertical bar graph representing counts/frequencies corresponding to different bins, a histogram values are thus restricted to positive values.
Contents |
Usage
{{Vertical bar graph
| float = <!-- left, right, center (default) -->
| border_width = <!-- default 1px -->
| border_color = <!-- default #c0c0c0 -->
| background_color = <!-- default #fdfdfd -->
| title = <!-- title for the vertical bar graph or histogram -->
| bar_height = <!-- default 30, must be an unformatted number (use {{formatnum: 6,500|R}} to remove formatting from numbers, e.g. 6,500 to get 6500) -->
| bar_width = <!-- default 1.0, must be an unformatted number -->
| units = <!-- for bar_height and bar_width, default em (uses 'em' units by default) -->
| bar_color = <!-- default rgb(206, 223, 242) -->
| bar_alt_color = <!-- default rgb(201, 218, 237) -->
| bar_border_color = <!-- optional (same as bar_color if not specified) -->
| bar_side_borders = <!-- "no" (without quotes) for no bar side borders, otherwise they are drawn -->
| data_max = <!-- upper bound on the values in the data fields (default data0) -->
| data_min = <!-- lower bound on the values in the data fields (default -data_max, or -data0 if data_max is not defined) -->
| label_type = <!-- title for the abscissae -->
| data_type = <!-- title for the ordinates -->
| <!-- label0 = -->
| <!-- label1 = -->
| <!-- ... --> <!-- labels (values) for abscissae not yet supported, would need vertical text style with needed predefined CSS -->
| <!-- label255 = -->
| <!-- label256 = -->
| data0 =
| data1 =
| ...
| data255 =
| data256 =
}}
Alignment
To float the vertical bar graph/histogram on the right of the page, use
| float = right
To float the vertical bar graph/histogram on the left of the page, use
| float = left
To float the vertical bar graph/histogram to the center of the page, use
| float = center
The default is center.
Bug
Bug: See Template:Vertical bar graph/bar#Bug.
Examples
Example 1
| 1
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| −1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{{Vertical bar graph
| float = right
| border_width = 1px
| border_color = #d9d9d9
| background_color = #f9f9f9
| title = <math>\text{Graph of } \sin(\tfrac{2 \pi n}{128}),\quad (0 \,\le\, n \,\le\, 128) \,</math>
| label_type = <math>n \,</math>
| data_type = <math>\sin(\tfrac{2 \pi n}{128}) \,</math>
| bar_width = 0.35
| bar_height = 25
| units = em
| bar_color = rgb(206, 223, 242)
| bar_alt_color = rgb(201, 218, 237)
| bar_border_color = black
| bar_side_borders = no
| data_max = 1
| data0 = {{sin| 2*pi * 0/128 }}
| data1 = {{sin| 2*pi * 1/128 }}
| data2 = {{sin| 2*pi * 2/128 }}
| data3 = {{sin| 2*pi * 3/128 }}
| data4 = {{sin| 2*pi * 4/128 }}
| data5 = {{sin| 2*pi * 5/128 }}
| data6 = {{sin| 2*pi * 6/128 }}
| data7 = {{sin| 2*pi * 7/128 }}
| data8 = {{sin| 2*pi * 8/128 }}
| data9 = {{sin| 2*pi * 9/128 }}
| data10 = {{sin| 2*pi * 10/128 }}
| data11 = {{sin| 2*pi * 11/128 }}
| data12 = {{sin| 2*pi * 12/128 }}
| data13 = {{sin| 2*pi * 13/128 }}
| data14 = {{sin| 2*pi * 14/128 }}
| data15 = {{sin| 2*pi * 15/128 }}
| data16 = {{sin| 2*pi * 16/128 }}
| data17 = {{sin| 2*pi * 17/128 }}
| data18 = {{sin| 2*pi * 18/128 }}
| data19 = {{sin| 2*pi * 19/128 }}
| data20 = {{sin| 2*pi * 20/128 }}
| data21 = {{sin| 2*pi * 21/128 }}
| data22 = {{sin| 2*pi * 22/128 }}
| data23 = {{sin| 2*pi * 23/128 }}
| data24 = {{sin| 2*pi * 24/128 }}
| data25 = {{sin| 2*pi * 25/128 }}
| data26 = {{sin| 2*pi * 26/128 }}
| data27 = {{sin| 2*pi * 27/128 }}
| data28 = {{sin| 2*pi * 28/128 }}
| data29 = {{sin| 2*pi * 29/128 }}
| data30 = {{sin| 2*pi * 30/128 }}
| data31 = {{sin| 2*pi * 31/128 }}
| data32 = {{sin| 2*pi * 32/128 }}
| data33 = {{sin| 2*pi * 33/128 }}
| data34 = {{sin| 2*pi * 34/128 }}
| data35 = {{sin| 2*pi * 35/128 }}
| data36 = {{sin| 2*pi * 36/128 }}
| data37 = {{sin| 2*pi * 37/128 }}
| data38 = {{sin| 2*pi * 38/128 }}
| data39 = {{sin| 2*pi * 39/128 }}
| data40 = {{sin| 2*pi * 40/128 }}
| data41 = {{sin| 2*pi * 41/128 }}
| data42 = {{sin| 2*pi * 42/128 }}
| data43 = {{sin| 2*pi * 43/128 }}
| data44 = {{sin| 2*pi * 44/128 }}
| data45 = {{sin| 2*pi * 45/128 }}
| data46 = {{sin| 2*pi * 46/128 }}
| data47 = {{sin| 2*pi * 47/128 }}
| data48 = {{sin| 2*pi * 48/128 }}
| data49 = {{sin| 2*pi * 49/128 }}
| data50 = {{sin| 2*pi * 50/128 }}
| data51 = {{sin| 2*pi * 51/128 }}
| data52 = {{sin| 2*pi * 52/128 }}
| data53 = {{sin| 2*pi * 53/128 }}
| data54 = {{sin| 2*pi * 54/128 }}
| data55 = {{sin| 2*pi * 55/128 }}
| data56 = {{sin| 2*pi * 56/128 }}
| data57 = {{sin| 2*pi * 57/128 }}
| data58 = {{sin| 2*pi * 58/128 }}
| data59 = {{sin| 2*pi * 59/128 }}
| data60 = {{sin| 2*pi * 60/128 }}
| data61 = {{sin| 2*pi * 61/128 }}
| data62 = {{sin| 2*pi * 62/128 }}
| data63 = {{sin| 2*pi * 63/128 }}
| data64 = {{sin| 2*pi * 64/128 }}
| data65 = {{sin| 2*pi * 65/128 }}
| data66 = {{sin| 2*pi * 66/128 }}
| data67 = {{sin| 2*pi * 67/128 }}
| data68 = {{sin| 2*pi * 68/128 }}
| data69 = {{sin| 2*pi * 69/128 }}
| data70 = {{sin| 2*pi * 70/128 }}
| data71 = {{sin| 2*pi * 71/128 }}
| data72 = {{sin| 2*pi * 72/128 }}
| data73 = {{sin| 2*pi * 73/128 }}
| data74 = {{sin| 2*pi * 74/128 }}
| data75 = {{sin| 2*pi * 75/128 }}
| data76 = {{sin| 2*pi * 76/128 }}
| data77 = {{sin| 2*pi * 77/128 }}
| data78 = {{sin| 2*pi * 78/128 }}
| data79 = {{sin| 2*pi * 79/128 }}
| data80 = {{sin| 2*pi * 80/128 }}
| data81 = {{sin| 2*pi * 81/128 }}
| data82 = {{sin| 2*pi * 82/128 }}
| data83 = {{sin| 2*pi * 83/128 }}
| data84 = {{sin| 2*pi * 84/128 }}
| data85 = {{sin| 2*pi * 85/128 }}
| data86 = {{sin| 2*pi * 86/128 }}
| data87 = {{sin| 2*pi * 87/128 }}
| data88 = {{sin| 2*pi * 88/128 }}
| data89 = {{sin| 2*pi * 89/128 }}
| data90 = {{sin| 2*pi * 90/128 }}
| data91 = {{sin| 2*pi * 91/128 }}
| data92 = {{sin| 2*pi * 92/128 }}
| data93 = {{sin| 2*pi * 93/128 }}
| data94 = {{sin| 2*pi * 94/128 }}
| data95 = {{sin| 2*pi * 95/128 }}
| data96 = {{sin| 2*pi * 96/128 }}
| data97 = {{sin| 2*pi * 97/128 }}
| data98 = {{sin| 2*pi * 98/128 }}
| data99 = {{sin| 2*pi * 99/128 }}
| data100 = {{sin| 2*pi * 100/128 }}
| data101 = {{sin| 2*pi * 101/128 }}
| data102 = {{sin| 2*pi * 102/128 }}
| data103 = {{sin| 2*pi * 103/128 }}
| data104 = {{sin| 2*pi * 104/128 }}
| data105 = {{sin| 2*pi * 105/128 }}
| data106 = {{sin| 2*pi * 106/128 }}
| data107 = {{sin| 2*pi * 107/128 }}
| data108 = {{sin| 2*pi * 108/128 }}
| data109 = {{sin| 2*pi * 109/128 }}
| data110 = {{sin| 2*pi * 110/128 }}
| data111 = {{sin| 2*pi * 111/128 }}
| data112 = {{sin| 2*pi * 112/128 }}
| data113 = {{sin| 2*pi * 113/128 }}
| data114 = {{sin| 2*pi * 114/128 }}
| data115 = {{sin| 2*pi * 115/128 }}
| data116 = {{sin| 2*pi * 116/128 }}
| data117 = {{sin| 2*pi * 117/128 }}
| data118 = {{sin| 2*pi * 118/128 }}
| data119 = {{sin| 2*pi * 119/128 }}
| data120 = {{sin| 2*pi * 120/128 }}
| data121 = {{sin| 2*pi * 121/128 }}
| data122 = {{sin| 2*pi * 122/128 }}
| data123 = {{sin| 2*pi * 123/128 }}
| data124 = {{sin| 2*pi * 124/128 }}
| data125 = {{sin| 2*pi * 125/128 }}
| data126 = {{sin| 2*pi * 126/128 }}
| data127 = {{sin| 2*pi * 127/128 }}
| data128 = {{sin| 2*pi * 128/128 }}
}}
Example 2
| 900000
Population migration | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| −900000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{{Vertical bar graph
| float = center
| border_width = 4px
| border_color = black
| background_color = #aaaaaa
| title = Population migration by city
| label_type = City
| data_type = Population migration
| bar_height = 10
| units = em
| bar_color = #ff0000
| bar_alt_color = #dd0000
| bar_border_color =
| bar_side_borders = no
| data_max = 900000
| label0 = City0
| data0 = 585,888
| label1 = City1
| data1 = 540,921
| label2 = City2
| data2 = 194,343
| label3 = City3
| data3 = -190,414
| label4 = City4
| data4 = 134,669
| label5 = City5
| data5 = 114,983
| label6 = City6
| data6 = -300,000
| label7 = City7
| data7 = -600,000
| label8 = City8
| data8 = 600,000
| label9 = City0
| data9 = 885,888
| label10 = City1
| data10 = -540,921
| label11 = City2
| data11 = 794,343
| label12 = City3
| data12 = 190,414
| label13 = City4
| data13 = -234,669
| label14 = City5
| data14 = 0
| label15 = City6
| data15 = -350,000
| label16 = City7
| data16 = 300,000
| label17 = City8
| data17 = 200,000
| label18 = City0
| data18 = -585,888
| label19 = City1
| data19 = -540,921
| label20 = City2
| data20 = -94,343
| label21 = City3
| data21 = -490,414
| label22 = City4
| data22 = 234,669
| label23 = City5
| data23 = 314,983
| label24 = City6
| data24 = -700,000
| label25 = City7
| data25 = 600,000
| label26 = City8
| data26 = -100,000
| label27 = City0
| data27 = 285,888
| label28 = City1
| data28 = 340,921
| label29 = City2
| data29 = -794,343
| label30 = City3
| data30 = 690,414
}}
Code
{| cellspacing="0" cellpadding="0" style="<!--{{#if:{{{table_width|}}}|width: {{{table_width}}}{{#if:{{{width_units|}}}|{{{width_units}}}|em}};}}--> border-style: solid; border-width: {{{border_width|1px}}}; border-color: {{{border_color|#c0c0c0}}}; background-color: {{{background_color|#fdfdfd}}}; text-align: left; {{#switch:{{{float|center}}}
| left=float: left; clear: left; margin: 0.5em 1em 0.5em 0;
| right=float: right; clear: right; margin: 0.5em 0 0.5em 1em;
| center=float: none; margin-left: auto; margin-right: auto;
}}<!--{{{table_style|}}}-->"
|+ '''{{#if:{{{title|}}}|{{{title}}}}}'''
|- style="height: 8px;"
|
|- style="height: {{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}{{#if:{{{units|}}}|{{{units}}}|em}};"
| style="text-align: right;" valign="top" | +{{{data_max}}} {{sup|–}}<!-- max ordinate -->
<span style="position: relative; padding-top:{{#expr: ({{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}) / 2}}{{#if:{{{units|}}}|{{{units}}}|em}};">
{{#if:{{{data_type|}}}| ''{{{data_type}}}''}} </span><!-- ordinate label -->
! style="height: 0; {{#if: {{{data0|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" | <!-- 0 -->
! style="height: 0; {{#if: {{{data1|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" |
! style="height: 0; {{#if: {{{data2|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" |
! style="height: 0; {{#if: {{{data3|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" |
! style="height: 0; {{#if: {{{data4|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" | <!-- 4 -->
(...)
! style="height: 0; {{#if:{{{data124|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" | <!-- 124 -->
! style="height: 0; {{#if:{{{data125|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" |
! style="height: 0; {{#if:{{{data126|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" |
! style="height: 0; {{#if:{{{data127|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" |
! style="height: 0; {{#if:{{{data128|}}}|width: {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}{{#if:{{{units|}}}|{{{units}}}|em}};}}" | <!-- 128 -->
! style="width: 8px;" |
|- style="height: 0px;"
| {{#if: {{{data0|}}} |
{{!!}} {{Histogram/bar| {{formatnum: {{{data0}}} |R}} |{{formatnum: {{#if:{{{data_max|}}}|{{{data_max}}}|{{{data0}}}}} |R}}|height = {{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}|width = {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}|units = {{#if:{{{units|}}}|{{{units}}}|em}}|color = {{{bar_color|rgb(206, 223, 242)}}}|side_borders = {{#if:{{{bar_side_borders|}}}|{{{bar_side_borders}}}|no}}|border_color = {{{bar_border_color|{{{bar_color|rgb(206, 223, 242)}}} }}} }} }}<!--
-->{{#if: {{{data1|}}} |
{{!!}} {{Histogram/bar| {{formatnum: {{{data1}}} |R}} |{{formatnum: {{#if:{{{data_max|}}}|{{{data_max}}}|{{{data0}}}}} |R}}|height = {{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}|width = {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}|units = {{#if:{{{units|}}}|{{{units}}}|em}}|color = {{#if:{{{bar_alt_color|}}}|{{{bar_alt_color}}}|rgb(201, 218, 237)}}|side_borders = {{#if:{{{bar_side_borders|}}}|{{{bar_side_borders}}}|no}}|border_color = {{{bar_border_color|{{{bar_color|rgb(206, 223, 242)}}} }}} }} }}<!--
(...)
-->{{#if:{{{data127|}}} |
{{!!}} {{Histogram/bar|{{formatnum: {{{data127}}} |R}} |{{formatnum: {{#if:{{{data_max|}}}|{{{data_max}}}|{{{data0}}}}} |R}}|height = {{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}|width = {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}|units = {{#if:{{{units|}}}|{{{units}}}|em}}|color = {{#if:{{{bar_alt_color|}}}|{{{bar_alt_color}}}|rgb(201, 218, 237)}}|side_borders = {{#if:{{{bar_side_borders|}}}|{{{bar_side_borders}}}|no}}|border_color = {{{bar_border_color|{{{bar_color|rgb(206, 223, 242)}}} }}} }} }}<!--
-->{{#if:{{{data128|}}} |
{{!!}} {{Histogram/bar|{{formatnum: {{{data128}}} |R}} |{{formatnum: {{#if:{{{data_max|}}}|{{{data_max}}}|{{{data0}}}}} |R}}|height = {{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}|width = {{#if:{{{bar_width|}}}|{{{bar_width}}}|1.0}}|units = {{#if:{{{units|}}}|{{{units}}}|em}}|color = {{{bar_color|rgb(206, 223, 242)}}}|side_borders = {{#if:{{{bar_side_borders|}}}|{{{bar_side_borders}}}|no}}|border_color = {{{bar_border_color|{{{bar_color|rgb(206, 223, 242)}}} }}} }} }}
|
|- style="height: {{#if:{{{bar_height|}}}|{{{bar_height}}}|30}}{{#if:{{{units|}}}|{{{units}}}|em}};"
| style="text-align: right;" valign="bottom" | -{{{data_max}}} {{sub|–}}<!-- min ordinate -->
|- style="height: 8px;"
|
|-
|}
See also
- {{Vertical bar graph/bar}}/{{Histogram/bar}} to generate vertical bars (used by {{Vertical bar graph}}/{{Histogram}})
- {{Vertical bar graph}}/{{Histogram}} to generate a vertical bar graph or histogram (using {{Vertical bar graph/bar}}/{{Histogram/bar}})
- {{Vertical bar graph from lists}}/{{Histogram from lists}}
- {{Bar graph/bar}} to generate horizontal bars (used by {{Bar graph}})
- {{Bar graph}} to generate a horizontal bar graph (using {{Bar graph/bar}})
- {{Bar graph from lists}}
External links
- Eric Meyer, Vertical Bar Graphs with CSS and PHP.
- Engineering Statistics Handbook, Histogram, NIST.
