Template:Medical cases chart

维基百科,自由的百科全书
文档图示 模板文档[查看] [编辑] [历史] [清除缓存]

简介

This template should be used for all outbreak, epidemic and pandemic medical cases charts based on {{Bar box}} to maintain consistency. It displays horizontal bars for up to 5 different classifications of cases for each valid date or interval. It offers two columns to make numbers explicit and to show relative or absolute changes. It also uses a sophisticated toggling system to control the visualization of data rows across many months or years. It is designed to be flexible, but still standardizes some parts of the chart. This template should be transcluded in other templates, NOT in article pages. Suggest features in the talk page or code them if they're neither controversial nor incompatibility prone.

参见

Category:2019冠狀病毒病病例數模板

用法

{{Medical cases chart
|float      = side of the page where the chart will be located (left|center|right|none) [optional, defaults to: right]

|barwidth   = width of the stacked bars area (thin|medium|wide|auto)                    [optional, defaults to: medium]
|numwidth   = max width of the numbers in the right columns (AA or AAAA)<-(n|t|m|w|x|d) [optional, defaults to: mm; see info below]
|rowheight  = height of each bar, in multiples of the text height                       [optional, defaults to: 1.6]

|pretitle   = text at the beginning of the title                                        [optional]
|disease    = name of the disease
|location   = location of the outbreak the chart is showing
|location2  = broader location such as state/province or country                        [optional]
|location3  = broadest location such as country                                         [optional]
|posttitle  = text at the end of the title                                              [optional]
|outbreak   = name of the main outbreak for the links of the {{navbar}}                 [see info below]

|recoveries = whether to display recoveries in the legend (yesno)                       [optional, defaults to: yes]
|reclbl     = alternate label for the 2nd cases classification                          [optional, defaults to: Recoveries]
|altlbl1    = alternate label for the 3rd cases classification (hide)                   [optional, defaults to: Active cases]
|altlbl2    = alternate label for the 4th cases classification                          [optional]
|altlbl3    = alternate label for the 5th cases classification                          [optional]

|collapsible= whether rows are collapsible (forced no if days span <= duration) (yesno) [optional, defaults to: 'auto']
|duration   = span of last days to initially display to control default chart height    [optional, defaults to: 15]
|nooverlap  = whether to prevent the last month's toggle from overlapping, in days,     [optional, defaults to: no; see info below]
              with the "Last XX days" toggle (yesno)
|right1     = heading of the 1st data column                                            [optional, defaults to: # of cases]
|right1data = cases classification of the 1st column for auto filling (1-5|alttot1-2)   [optional, defaults to: 3, if right1 is "# of cases"]
|changetype1= calculate percent change (%) or absolute change (#) (p|a)                 [optional, defaults to: percent]
|right2     = heading of the 2nd data column                                            [optional]
|right2data = cases classification of the 2nd column for auto filling (1-5|alttot1-2)   [optional, defaults to: 1, if right2 is "# of deaths"]
|changetype2= calculate percent change (%), absolute change (#) or onlypercent (p|a|o)  [optional, defaults to: percent]
|changetype = applies to both 1st and 2nd change columns                                [optional]

|datapage   = tabular data page from Commons to scrape cases data from                  ['optional'; see its talk section and module]
|data       = data lines for each valid date or interval                                ['optional'; see Data's syntax]

|caption    = caption under the chart                                                   [optional]
}}

It may be desirable to make a specific outbreak chart have different widths depending on the page it is displayed. The barwidth parameter can be used to achieve this. For example, |barwidth={{{barwidth|wide}}} will display the chart wide in the template page itself, but will allow different widths when the outbreak template is transcluded with this parameter in article pages.

numwidth is a sequence of the initials of none, thin, medium, wide, extra wide and default, and it determines the maximum width of each number in the data columns. Therefore, one should be chosen that minimizes the total width, but which doesn't make the numbers break/wrap on mobile view. Using 2 or 4 characters allocates one or two data columns, respectively. For example, |numwidth=mw sets the right1 value column to medium and the right1 change column to wide. |numwidth=mwnt sets the right1 value column to medium, the right1 change column to wide, the right2 value column to none, and the right2 change column to thin.

The {{navbar}} links are contructed like this: outbreak data/[[location3/]location2/]*location medical cases chart. outbreak may be more descriptive than disease to avoid page name collisions. So, for example, COVID-19 charts have |outbreak=COVID-19 pandemic. location has "the " internally removed and is capitalized to become *location.

By default, the "Last X days" button toggles days which intersect with those of the last months. This happens regardless of the state (activated or not) of the month buttons. In fact, due to limitations of custom collapsing, toggles are stateless (a workaround is used to simulate two 'states'). All in all, this can lead to situations where clicking one button causes unintuitive toggling like creating date gaps. nooverlap works around this issue by forcing the buttons of the last months to not overlap with the "Last X days" button. The result is usually a partial last month button, "Mon XX-XX", where XX are the first and last days of the month that the button affects. Extra info in the main bug discussion.

To display absolute change in the first column and percent change in the second column, set the following (AA represents any two allowed characters, # represents the classification number being shown, which should be the same for right1data and right2data):

|numwidth=AAnw
|right1data=#
|changetype1=a
|right2data=#
|changetype2=o

Data

The data parameter should be populated by a sequence of lines containing a different set of parameters separated by semicolons, ;.

{{{2}}}

All values are optional, and empty values can be represented by sequential semicolons (e.g. ;;). Omitting the date will treat the row as a date interval, unless the date can be automatically interpolated (for 1 day intervals). This is mostly done when no new cases are reported. Omitting a classification value makes a 0 width stacked bar and ommiting all values or the line itself is recommended to depict dates where no data is reported.

The expression for total in the 3rd cases classification has deaths and recoveries automatically subtracted from it. If a manual calculation of the number in that classification (generally active cases) is wanted, use alttot1. The same applies to the expression for total in the 5th cases classification and alttot2.

The 1st column #, 1st column change, 2nd column #, and 2nd column change values can be automatically calculated if omitted. The 1st column values will be automatically calculated if right1 is omitted or |right1=# of cases, and the 2nd column values will be automatically calculated if |right2=# of deaths. If right1 or right2 are set to other values, the columns can still be automatically calculated by setting right1data and right2data to the classification number wanted for display in columns 1 and 2, respectively (e.g. 1 for deaths, 2 for recoveries, 3 for total, etc.). The changes in the first and second columns are automatically wrapped in parentheses.

The other parameters=values can be any number of the parameters below and their values, separated by semicolons. See the examples.

alttot1    = alternate expression for active cases (3rd cases classification)
alttot2    = alternate expression for number in the 5th cases classification
firstright1= whether a change in the first column is not applicable (n.a.) (yesno)
firstright2= whether a change in the second column is not applicable (n.a.) (yesno)
enddate    = end date of interval if automatic one causes incorrect toggling behavior [required if chart ends with interval]
note0      = note text post-fixed to the date, that should create a minimum space consuming object, like a note link, to avoid wrapping
note1      = like note0, only post-fixed to column 1
note2      = like note1, only post-fixed to column 2

例子

{{2019冠狀病毒病病例數/中國大陸圖表}}

{{Medical cases chart
|numwidth=mmmw

|disease=2019冠状病毒病
|location=中國大陸
|outbreak=2019冠狀病毒病病例數

|altlbl1=确诊
|altlbl2=湖北省临床诊断(2.10-2.15)
|altlbl3=确诊或临床诊断{{noteTag|不包含无症状感染者}}

|right1=病例数<br />(不含临床诊断)
|right2=病例数<br />(含临床诊断)

|data=
...

|caption=
<div class="center" style="width:90%; margin-left:auto; margin-right:auto;"><small>...</small></div>
...
}}

TemplateData

Produces charts based on {{Bar box}} for outbreak, epidemic and pandemic medical cases.

模板参数[编辑模板数据]

参数描述类型状态
Diseasedisease

name of the disease

字符串必需
Outbreakoutbreak

name of the main outbreak (for link of the {{navbar}})

字符串必需
Locationlocation

location of the outbreak the chart is showing

字符串必需
Datadata

data lines for each valid date (see Data's and Rows' syntax)

自动值
未知必需
Pretitlepretitle

text at the beginning of the title

自动值
未知可选
Bar widthbarwidth

width of the stacked bars area (thin|medium|wide)

自动值
medium
未知可选
Number widthnumwidth

max width of the numbers in the right columns (xx or xxxx)<-(n|t|m|w|d)

自动值
mm
未知可选
Floatfloat

on what side of the page should the chart be located (left|right|none)

自动值
right
字符串可选
Location 2location2

broader location such as state/province or country

字符串可选
Location 3location3

broadest location such as country

字符串可选
Post-titleposttitle

text at the end of the title

未知可选
Recoveriesrecoveries

display recoveries in the legend (no|n|0)

未知可选
Recoveries labelreclbl

alternate label for the recoveries classification

未知可选
Alt label 1altlbl1

alternate label for the 3rd case classification

未知可选
Alt label 2altlbl2

alternate label for the 4th case classification

自动值
Cases
未知可选
Alt label 3altlbl3

alternate label for the 5th case classification

未知可选
Toggles bartogglesbar

HTML of the toggles bar to show/hide rows

未知可选
Right 1right1

heading of the first data column

自动值
# of cases
未知可选
Right 2right2

heading of the second data column

字符串可选
rowsrows

无描述

未知可选
Divisordivisor

manual override of the scaling divisor of the bars

自动值
auto
未知可选
Collapsiblecollapsible

whether the rows are collapsible (yes|y|1)

未知可选
Captioncaption

caption under the chart

未知可选
}