Template:Medical cases chart
| Luaモジュールを使用しています: |
| このテンプレートはテンプレートスタイルを使用しています: |
当テンプレートは、すべての疫病の発生(アウトブレイク、エピデミック、パンデミック)の症例数の推移について、{{Bar box}}をベースにした図表に対して、一貫性を保つために使用します。当テンプレートは、有効な日付または空白の期間について1日あたり最大5つまでの異なる症例分類を水平棒グラフの様式にして表示します。また、症例数の値を明示的に表したり、増分(相対的な変化率または絶対的な変化量)を表したりするため、グラフ部の横に2つの列が用意されています。さらに、長い年月に及ぶデータ行の操作を可視化するために洗練されたモード切替システムが採用されています。柔軟に運用できるように設計されていますが、図表の一部は標準化されています。当テンプレートは、記事ページで直接使用するのではなく、他のテンプレートにトランスクルード(参照読み込み)させて使用してください。機能の追加は、ノートページで提案するか、議論の余地がなく、互換性の問題もない場合にはコードを書き換えてください。
使い方
[編集]Lua エラー モジュール:Medical_cases_chart 内、643 行目: attempt to index local 'key' (a number value)
特定の疫病発生図表を、表示するページに応じて異なる幅にしたい場合があるかもしれません。そのような場合には、barwidthパラメータを使用します。たとえば、|barwidth={{{barwidth|wide}}}と記述すると、テンプレートページ自体では図表を広幅で表示しますが、記事ページでこの引数を指定して当テンプレートを参照読み込みさせると、異なる幅で表示されます。
numwidthは、 none (幅無)、 thin (細幅)、 medium (中幅)、 wide (広幅)、 extra wide (特広幅)、 default (既定幅)の頭文字の一列で、データ列の各数字の最大幅を決定します。そのため、全体の幅を最小にしてもモバイルビューで数字が折り返されないような幅を選ぶ必要があります。2文字または4文字の文字列を指定すると、それぞれ1つまたは2つのデータ列が割り当てられます。たとえば、 |numwidth=mwは、right1の数値列を中幅に設定し、right1の増分列を広幅に設定します。|numwidth=mwntはそれぞれ、right1の数値列を中幅に、right1の増分列を広幅に、right2の数値列を幅無に、right2の増分列を細幅に設定します。
{{navbar}}リンクは次のような構成です:outbreakデータ/症例数の推移/図表/[[location3/]location2/]location。outbreakはdiseaseよりも記述的で、ページ名の衝突を回避します。ゆえに、たとえば、COVID-19の図表では|outbreak=COVID-19の流行となっています。
デフォルトでは、"最近N日間"のボタンで当月の日付から遡って最新のN日分のデータを表示するように切り替えられます。これは月ボタンの状態(アクティブか非アクティブか)にかかわらず動作します。実際には、カスタム折りたたみの制限があるため、ボタン切り替えの動作はステートレスです(予め2つの状態を想定して次善の策を講じてあります)。結局のところ、1つボタンをクリックすると日付にずれが生じるなど、直感的に理解できない切り替え動作が発生する可能性があります。nooverlapは、この問題に対する次善策で、最新の月のボタンを"最近N日間"ボタンとオーバーラップしないように強制します。その結果、通常は「M月D日-D日」という前月の一部分を呼び出すボタンが表示されます(Dはそのボタンが影響する月の最初の日と最後の日)。この件に関する追加情報は英語版ノートへ。
1列目に絶対変化量、2列目に相対変化量(百分率)を表示するには、以下のように設定します(AAは任意の2文字、#は表示させようとしている分類番号を表し、right1dataとright2dataで同じになります)。
|numwidth=AAnw |right1data=# |changetype1=a |right2data=# |changetype2=o
データ
[編集]dataパラメータには、セミコロン;で区切られた異なるデータセットを含む一連の行を入力します。
|data= 日付;死者数;第2分類(回復者数);第3分類(合計またはaltlbl1);第4分類の値;第5分類の値;1列目の症例数;1列目の増分;2列目の症例数;2列目の増分;その他のパラメータ=値 日付;死者数;第2分類(回復者数);第3分類(合計またはaltlbl1);第4分類の値;第5分類の値;1列目の症例数;1列目の増分;2列目の症例数;2列目の増分;その他のパラメータ=値 ...
値はすべてオプションで、空値は連続したセミコロン (;;) で表されます。日付を省略すると、(1日間の間隔を空けて)日付が自動補間されない限り、その行は空白の1日間として扱われます。これは、新規の症例報告がなかった場合の処理となります。分類の値を省略すると幅が0の積み重ね棒ができますが、データの報告がない日付を表現するには、すべての値を省略するか、行そのものを省略する方法が推奨されます。
第3分類の症例数の合計を表す式では、そこから死者数と回復者数が自動的に差し引かれます。同分類の数値を手動で計算したい場合(一般的には現存症例)は、alttot1を使用してください。同様の処理は、第5分類の症例数の合計を表す式とalttot2にも適用されます。
1列目の症例数、1列目の増分、2列目の症例数、2列目の増分の値は、省略された場合、自動的に計算されます。1列目の値はright1が省略されるか|right1=症例数が設定された場合に自動的に計算され、2列目の値は|right2=死者数が設定された場合に自動的に計算されます。right1またはright2がその他の値に設定された場合も、right1dataおよびright2dataをそれぞれ1列目と2列目に表示させたい値の分類番号に設定(例:死者数については1、回復者数については2、合計については3に設定する等)することにより、両列の値は自動的に計算されます。1列目および2列目の増分は自動的に括弧で囲われて表示されます。
その他のパラメータ=値は、セミコロンで区切られた、以下に示す任意のパラメータとその値を表します。具体的な使い方は使用例を参照してください。
alttot1 = 現存症例(第3症例分類)の代替となる表記 alttot2 = 第5症例分類の数字の代替となる表記 firstright1 = 1列目の増分が該当なし (n.a.) か否か (yesno) firstright2 = 2列目の増分が該当なし (n.a.) か否か (yesno) enddate = 自動補間で正常な切り替えの動作がしない場合に記入する空白期間の最後の日付 [図表データ行が空白期間で終了する場合には必須] note0 = 注記テキストを日付列の直後に挿入可能(折り返しを避けるために最小限のスペースを使います) note1 = note0と同様。1列目データ列の直後にのみ挿入可能 note2 = note1と同様。2列目データ列の直後にのみ挿入可能
使用例
[編集]{{Medical cases chart
|float=center
|numwidth=mw
|disease=Green Flu
|location=Savannah|location2=Georgia|location3=United States
|outbreak=2009 Green Flu outbreak
|recoveries=n
|data=
2009-04-13;;;42;;;42;firstright1=y
2009-04-14;;;356;;;356;+748%
2009-04-15;;;1503;;;1,503;+322%
2009-04-16;57;;5915;;;5,915;+294%
2009-04-17;2000;;9500;;;~9,500;+60.6%
}}
{{Medical cases chart
|barwidth=wide
|numwidth=mwwd
|rowheight=1.8
|pretitle=Approximate
|disease=Spanish Flu
|location=the World
|posttitle=(excluding Oceania)
|outbreak=1918-20 Spanish Flu pandemic
|altlbl1=Active confirmed
|altlbl2=Suspected
|altlbl3=Estimated
|collapsible=n
|right1=Confirmed cases
|right2=Including suspected and estimated cases
|data=
1918-03-10;2060-300;3000-800;6000;;;6000;firstright1=y
1918-07;12600;20000;40000;12000;;alttot2=(34000-15000-8700+40);40000;+500%;10500;firstright2=y
;12600;20000;40000;12000;;alttot2=(34000-15000-8700+40);40000;;10500
1919;100000;250000;;;1000000;;;1mi;+500k
}}
{{Medical cases chart
|numwidth=tttt
|disease=Ebola
|location=Guinea-Bissau
|outbreak=2014 EVD epidemic
|altlbl1=hide
|altlbl2=Moderate cases
|altlbl3=Severe cases (hospitalized)
|duration=5
|nooverlap=y
|right1=# of severe cases
|right1data=alttot2
|right2=# of deaths
|changetype=a
|data=
2014-01-01;;;;;;alttot2=1;;+1
2014-01-15;1;;;;;alttot2=1;;=;;+1
<!-- no data reported -->
2014-01-20;2;;;1;;alttot2=1;;=;;+1
<!-- no data reported -->note0={{efn|On Jan 21<sup>st</sup>, there was a national blackout that forced the data to be reported on the next day.}}
2014-01-22;2;;;2;;alttot2=2;;+1;;=
;2;;;2;;alttot2=2
;2;1;;1;;alttot2=2
2014-02-05;3;1;;1;;alttot2=1
;3;2;;;;alttot2=1;enddate=2014-03-01
;3;2;;1;;alttot2=1
2014-03-30;3;4;;;;alttot2=0;note1={{efn|On Mar 30<sup>th</sup>, new cases were reported just before the press conference, thus they weren't included in the official count.}}
2014-03-31;3;4;;2;;alttot2=1;;+1
2014-04-01;3;5;;4;;alttot2=2
2014-04-02;5;6;;5;;alttot2=3;note2={{efn|The death of a foreigner at a border crossing medical tent is under dispute if it should be included in Guinea-Bissau's count.}}
;5;8;;3;;alttot2=3;enddate=2014-04-04
|caption={{notelist}}
}}
応用例
[編集]{{COVID-19の流行データ/症例数の推移/図表/中国本土}}
{{Medical cases chart
|numwidth=mmmw
|disease=COVID-19
|location=中国本土
|outbreak=COVID-19の流行
|altlbl1=検査済
|altlbl2=臨床診断
|altlbl3=検査済または臨床診断
|right1=症例数<br />(臨床診断を除く)
|right2=症例数<br />(臨床診断を含む)
|data=
...
|caption=
<div class="center" style="width:90%; margin-left:auto; margin-right:auto;"><small>...</small></div>
...
}}
TemplateData
[編集]{{Bar box}}をベースにした疫病発生症例数データ図表を生成します
| パラメーター | 説明 | 型 | 状態 | |
|---|---|---|---|---|
| Float | float | 図表を配置するページの側 (left|center|right|none)
| 文字列 | 省略可能 |
| Bar width | barwidth | 積み重ね棒領域の幅 (thin|medium|wide|auto)
| 文字列 | 省略可能 |
| Number width | numwidth | 右2列の数字の最大幅 (AAまたはAAAA)←(n|t|m|w|x|d)
| 文字列 | 推奨 |
| Row height | rowheight | 文字の高さに対する各棒の高さの倍数値
| 数値 | 省略可能 |
| Pretitle | pretitle | タイトルの先頭に置くテキスト | 文字列 | 省略可能 |
| Disease | disease | 疾病の名称
| 文字列 | 必須 |
| Location | location | 図表が示す疫病の発生場所
| 文字列 | 必須 |
| Location 2 | location2 | 国/州/都道府県など発生場所の上位に置かれる広域地名
| 文字列 | 省略可能 |
| Postposition 2 | postposition2 | location2に対して付加する後置詞
| 文字列 | 省略可能 |
| Location 3 | location3 | 連邦/国など発生場所の最上位に置かれる広域地名
| 文字列 | 省略可能 |
| Postposition 3 | postposition3 | location3に対して付加する後置詞
| 文字列 | 省略可能 |
| Post-title | posttitle | タイトルの末尾に置くテキスト
| 文字列 | 省略可能 |
| Outbreak | outbreak | {{navbar}}のリンクとなるべき疫病の発生事態の呼称
| 文字列 | 必須 |
| Recoveries | recoveries | 凡例中に「回復」を表示するか否か (yesno)
| 不明 | 省略可能 |
| Recoveries label | reclbl | 「回復」分類に当てる代替ラベル名称
| 文字列 | 省略可能 |
| Alternate label 1 | altlbl1 | 第3症例分類に当てる代替ラベル名称 (隠す)
| 文字列 | 省略可能 |
| Alternate label 2 | altlbl2 | 第4症例分類に当てる代替ラベル名称
| 文字列 | 省略可能 |
| Alternate label 3 | altlbl3 | 第5症例分類に当てる代替ラベル名称
| 文字列 | 省略可能 |
| Collapsible | collapsible | 行を折りたたむか否か (期間がduration日数以下の場合はnoを強制) (yesno)
| 不明 | 省略可能 |
| Duration | duration | 表示する図表の高さの初期値を左右する「最近N日間」の期間の長さ
| 数値 | 省略可能 |
| No overlap | nooverlap | 最新の月のボタンが"最近N日間"ボタンと重複するのを防ぐか否か (yesno)
| 不明 | 省略可能 |
| Right 1 | right1 | データ列1列目の見出し
| 文字列 | 省略可能 |
| Right 1 data | right1data | 1列目の症例分類のオートフィル用 (1-5|alttot1-2)
| 不明 | 省略可能 |
| Change type 1 | changetype1 | 症例数の増分を百分率(%)で計算するか絶対量(#)で計算するか (p|a)
| 文字列 | 省略可能 |
| Right 2 | right2 | データ列2列目の見出し
| 文字列 | 省略可能 |
| Right 2 data | right2data | 2列目の症例分類のオートフィル用 (1-5|alttot1-2)
| 不明 | 省略可能 |
| Change type 2 | changetype2 | 増分計算表示は百分率(%)か絶対量(#)か百分率のみか (p|a|o)
| 文字列 | 省略可能 |
| Change type | changetype | 前記のパラメータを1列目と2列目の増分列の両方にまとめて適用
| 文字列 | 省略可能 |
| Data page | datapage | コモンズの表形式データページから症例数データを取得する場合に使用
| 不明 | 省略可能 |
| Data | data | 各々の有効な日付または空いた間隔を記述するデータ行 (データの構文を参照)
| 内容 | 推奨 |
| Caption | caption | 図表の下に付け加える説明文
| 内容 | 推奨 |