Stata: 都道府県のそれっぽい位置に配置した図
Stataで都道府県のそれっぽい位置に,by オプションを使って都道府県ごとの図を描く方法です.
サンプルコードは下にあります.
参考:
サンプルコード
サンプルコード
clear
/* ssc install blindschemes, replace all */
set scheme plotplain
/* * 2- 2 都道府県別人口と人口増減率(エクセル:16KB) */
/* ====================================================================== */
import excel using "https://www.stat.go.jp/data/nihon/zuhyou/n200200200.xlsx", sheet("02-02") cellrange(A10:I56)
drop B-F
rename A prefj_s
rename G pop
rename H mfratio
rename I pop_change_rate
/* 都道府県コード定義 */
/* ====================================================================== */
/* 都道府県JISコード */
label define prefj ///
1 "北海道" ///
2 "青森" ///
3 "岩手" ///
4 "宮城" ///
5 "秋田" ///
6 "山形" ///
7 "福島" ///
8 "茨城" ///
9 "栃木" ///
10 "群馬" ///
11 "埼玉" ///
12 "千葉" ///
13 "東京" ///
14 "神奈川" ///
15 "新潟" ///
16 "富山" ///
17 "石川" ///
18 "福井" ///
19 "山梨" ///
20 "長野" ///
21 "岐阜" ///
22 "静岡" ///
23 "愛知" ///
24 "三重" ///
25 "滋賀" ///
26 "京都" ///
27 "大阪" ///
28 "兵庫" ///
29 "奈良" ///
30 "和歌山" ///
31 "鳥取" ///
32 "島根" ///
33 "岡山" ///
34 "広島" ///
35 "山口" ///
36 "徳島" ///
37 "香川" ///
38 "愛媛" ///
39 "高知" ///
40 "福岡" ///
41 "佐賀" ///
42 "長崎" ///
43 "熊本" ///
44 "大分" ///
45 "宮崎" ///
46 "鹿児島" ///
47 "沖縄"
/* 描画用コード */
label define pref_plotj ///
2 "北海道" ///
5 "青森" ///
14 "岩手" ///
24 "宮城" ///
4 "秋田" ///
13 "山形" ///
32 "福島" ///
40 "茨城" ///
23 "栃木" ///
22 "群馬" ///
31 "埼玉" ///
47 "千葉" ///
39 "東京" ///
46 "神奈川" ///
12 "新潟" ///
11 "富山" ///
3 "石川" ///
10 "福井" ///
38 "山梨" ///
30 "長野" ///
21 "岐阜" ///
45 "静岡" ///
29 "愛知" ///
37 "三重" ///
20 "滋賀" ///
9 "京都" ///
19 "大阪" ///
8 "兵庫" ///
28 "奈良" ///
27 "和歌山" ///
7 "鳥取" ///
6 "島根" ///
18 "岡山" ///
17 "広島" ///
16 "山口" ///
44 "徳島" ///
36 "香川" ///
35 "愛媛" ///
43 "高知" ///
26 "福岡" ///
25 "佐賀" ///
15 "長崎" ///
33 "熊本" ///
34 "大分" ///
42 "宮崎" ///
41 "鹿児島" ///
1 "沖縄"
encode prefj_s, gen(pref) label(prefj)
encode prefj_s, gen(pref_plotj) label(pref_plotj)
order pref pref_plotj, after(prefj_s)
label variable prefj_s "都道府県" // 文字列
label variable pref "都道府県" // JISコード
label variable pref_plotj "都道府県" // 描画用コード
label variable pop "平成30年推定人口"
label variable mfratio "人口性比(女性=100)"
label variable pop_change_rate "人口増減率"
/* * 描画 */
local holes " holes(2/9 11/15 17/18 21 43/44 55 57 65/67) "
local byopts `" by(pref_plotj, cols(10) `holes' note("") leg(off)) "'
graph bar (asis) pop, bar(1, col(red)) `byopts' by(, ti("平成30年推定人口"))
gen pop_change_ratep = pop_change_rate if pop_change_rate >= 0 & !missing(pop_change_rate)
gen pop_change_raten = pop_change_rate if pop_change_rate < 0
graph bar (asis) pop_change_ratep pop_change_raten, bar(1, col(blue)) bar(2, col(red)) `byopts' yline(0) by(, ti("人口増加率"))