马赛克图(Marimekko Chart),(也称为镶嵌图和比例堆叠条形图)可视为具有附加轴的常规堆叠图表。这允许我们创建同时具有百分比轴和总轴的图表,使用面积来表示每个细分的总数。这就是我们说的“宽度有意义的百分比堆积柱形图”。
目前并没有通用Stata软件包可以绘制马赛克图,为此维也纳经济大学(Vienna University of Economics and Business)的Asjad Naqvi开发了Stata社区命令marimekko,用以快捷绘制马赛克图。
安装Stata社区命令Marimekko的Stata代码如下:
net install marimekko, from("https://raw.githubusercontent.com/asjadnaqvi/stata-marimekko/main/installation/") replace
数据准备工作的Stata代码如下:
use "http://ds.epiman.cn/uploads/2022/07/demo_r_pjangrp3_pop_change.dta", clear
drop NUTS_ID
replace pop = pop / 1000000
rename xvar regions
label define regions 1 "Berlin" 2 "Hamburg" 3 "Bayern" 4 "Brandenburg" ///
5 "Baden-Württemberg" 6 "Hessen" 7 "Schleswig-Holstein" 8 "Rheinland-Pfalz" 9 "Niedersachsen" ///
10 "Bremen" 11 "Nordrhein-Westfalen" 12 "Mecklenburg-Vorpommern" 13 "Sachsen" 14 "Saarland" ///
15 "Thüringen" 16 "Sachsen-Anhalt", replace
label values regions regions
绘制上图的Stata代码如下:
marimekko change pop, label(regions)
绘制上图的Stata代码如下:
marimekko change pop, label(regions) sort(change) reverse
Source:https://github.com/asjadnaqvi/stata-marimekko