CCUSA provides disaster relief assistance and wanted to create a map to better target mitigation, preparedness, relief, and recovery projects in order
72 | to best serve communities that are both at greatest risk for disasters and most overlooked or outright excluded
73 | from federal assistance during disasters. Specifically, they wanted to see the presence of acutely vulnerable
74 | populations such as uninsured (homeowners or renters), homeless, or subsidized renters at the local level.
75 | Information about a particular area's social vulnerability, housing and transportation vulnerability, and demographics are visualized.
76 | The Disaster Operations Map can be used to strategically allocate resources to prepare for disasters,
77 | as well as identifying where vulnerable populations live within an area affected by a disaster.
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
The code for the map is open source and available on our GitHub account. We are also very grateful to ATTOM Data Solutions, who kindly provided us with data for this project. Lastly, thank you MapBox DC for connecting us to your experts who helped us get started.
86 |
113 |
114 |
115 | ATTOM is a data provider and generously provided disaster data to this project.
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
We would like to acknowledge and thank our amazing team and partners. Richard Carder and Jake Snyder were the DataKind Data Ambassadors. Lukas Martinelli, Tom MacWright, Lew Ting, Mohammed Kemal, and many others contributed significantly, as well as volunteers who participated in our Data Jam and Data Dives.
129 | DKDC Chapter Leaders Max Richman and Judy Yang assisted with project supervision.
130 | Thank you Zach Cahalan (CCUSA partner liaison) for providing guidance to the team, we hope the Disaster Operations Map makes a true and positive impact in your work!
131 |
143 |
144 | Catholic Charities USA is a national organization that offers support to member agencies,
145 | provides disaster relief and promotes poverty-reduction through research and legislative reform.
146 |
152 |
153 | DataKind brings high-impact organizations together with leading data scientists to use data science in the service of humanity.
154 | Our work helps organizations develop evidence-based decision making, increase efficiency, and enhance their data literacy.
155 |
166 |
167 |
168 |
--------------------------------------------------------------------------------
/css/normalize.css:
--------------------------------------------------------------------------------
1 | /*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
2 |
3 | /* Document
4 | ========================================================================== */
5 |
6 | /**
7 | * 1. Correct the line height in all browsers.
8 | * 2. Prevent adjustments of font size after orientation changes in
9 | * IE on Windows Phone and in iOS.
10 | */
11 |
12 | html {
13 | line-height: 1.15; /* 1 */
14 | -ms-text-size-adjust: 100%; /* 2 */
15 | -webkit-text-size-adjust: 100%; /* 2 */
16 | }
17 |
18 | /* Sections
19 | ========================================================================== */
20 |
21 | /**
22 | * Remove the margin in all browsers (opinionated).
23 | */
24 |
25 | body {
26 | margin: 0;
27 | }
28 |
29 | /**
30 | * Add the correct display in IE 9-.
31 | */
32 |
33 | article,
34 | aside,
35 | footer,
36 | header,
37 | nav,
38 | section {
39 | display: block;
40 | }
41 |
42 | /**
43 | * Correct the font size and margin on `h1` elements within `section` and
44 | * `article` contexts in Chrome, Firefox, and Safari.
45 | */
46 |
47 | h1 {
48 | font-size: 2em;
49 | margin: 0.67em 0;
50 | }
51 |
52 | /* Grouping content
53 | ========================================================================== */
54 |
55 | /**
56 | * Add the correct display in IE 9-.
57 | * 1. Add the correct display in IE.
58 | */
59 |
60 | figcaption,
61 | figure,
62 | main { /* 1 */
63 | display: block;
64 | }
65 |
66 | /**
67 | * Add the correct margin in IE 8.
68 | */
69 |
70 | figure {
71 | margin: 1em 40px;
72 | }
73 |
74 | /**
75 | * 1. Add the correct box sizing in Firefox.
76 | * 2. Show the overflow in Edge and IE.
77 | */
78 |
79 | hr {
80 | box-sizing: content-box; /* 1 */
81 | height: 0; /* 1 */
82 | overflow: visible; /* 2 */
83 | }
84 |
85 | /**
86 | * 1. Correct the inheritance and scaling of font size in all browsers.
87 | * 2. Correct the odd `em` font sizing in all browsers.
88 | */
89 |
90 | pre {
91 | font-family: monospace, monospace; /* 1 */
92 | font-size: 1em; /* 2 */
93 | }
94 |
95 | /* Text-level semantics
96 | ========================================================================== */
97 |
98 | /**
99 | * 1. Remove the gray background on active links in IE 10.
100 | * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
101 | */
102 |
103 | a {
104 | background-color: transparent; /* 1 */
105 | -webkit-text-decoration-skip: objects; /* 2 */
106 | }
107 |
108 | /**
109 | * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
110 | * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
111 | */
112 |
113 | abbr[title] {
114 | border-bottom: none; /* 1 */
115 | text-decoration: underline; /* 2 */
116 | text-decoration: underline dotted; /* 2 */
117 | }
118 |
119 | /**
120 | * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
121 | */
122 |
123 | b,
124 | strong {
125 | font-weight: inherit;
126 | }
127 |
128 | /**
129 | * Add the correct font weight in Chrome, Edge, and Safari.
130 | */
131 |
132 | b,
133 | strong {
134 | font-weight: bolder;
135 | }
136 |
137 | /**
138 | * 1. Correct the inheritance and scaling of font size in all browsers.
139 | * 2. Correct the odd `em` font sizing in all browsers.
140 | */
141 |
142 | code,
143 | kbd,
144 | samp {
145 | font-family: monospace, monospace; /* 1 */
146 | font-size: 1em; /* 2 */
147 | }
148 |
149 | /**
150 | * Add the correct font style in Android 4.3-.
151 | */
152 |
153 | dfn {
154 | font-style: italic;
155 | }
156 |
157 | /**
158 | * Add the correct background and color in IE 9-.
159 | */
160 |
161 | mark {
162 | background-color: #ff0;
163 | color: #000;
164 | }
165 |
166 | /**
167 | * Add the correct font size in all browsers.
168 | */
169 |
170 | small {
171 | font-size: 80%;
172 | }
173 |
174 | /**
175 | * Prevent `sub` and `sup` elements from affecting the line height in
176 | * all browsers.
177 | */
178 |
179 | sub,
180 | sup {
181 | font-size: 75%;
182 | line-height: 0;
183 | position: relative;
184 | vertical-align: baseline;
185 | }
186 |
187 | sub {
188 | bottom: -0.25em;
189 | }
190 |
191 | sup {
192 | top: -0.5em;
193 | }
194 |
195 | /* Embedded content
196 | ========================================================================== */
197 |
198 | /**
199 | * Add the correct display in IE 9-.
200 | */
201 |
202 | audio,
203 | video {
204 | display: inline-block;
205 | }
206 |
207 | /**
208 | * Add the correct display in iOS 4-7.
209 | */
210 |
211 | audio:not([controls]) {
212 | display: none;
213 | height: 0;
214 | }
215 |
216 | /**
217 | * Remove the border on images inside links in IE 10-.
218 | */
219 |
220 | img {
221 | border-style: none;
222 | }
223 |
224 | /**
225 | * Hide the overflow in IE.
226 | */
227 |
228 | svg:not(:root) {
229 | overflow: hidden;
230 | }
231 |
232 | /* Forms
233 | ========================================================================== */
234 |
235 | /**
236 | * 1. Change the font styles in all browsers (opinionated).
237 | * 2. Remove the margin in Firefox and Safari.
238 | */
239 |
240 | button,
241 | input,
242 | optgroup,
243 | select,
244 | textarea {
245 | font-family: sans-serif; /* 1 */
246 | font-size: 100%; /* 1 */
247 | line-height: 1.15; /* 1 */
248 | margin: 0; /* 2 */
249 | }
250 |
251 | /**
252 | * Show the overflow in IE.
253 | * 1. Show the overflow in Edge.
254 | */
255 |
256 | button,
257 | input { /* 1 */
258 | overflow: visible;
259 | }
260 |
261 | /**
262 | * Remove the inheritance of text transform in Edge, Firefox, and IE.
263 | * 1. Remove the inheritance of text transform in Firefox.
264 | */
265 |
266 | button,
267 | select { /* 1 */
268 | text-transform: none;
269 | }
270 |
271 | /**
272 | * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
273 | * controls in Android 4.
274 | * 2. Correct the inability to style clickable types in iOS and Safari.
275 | */
276 |
277 | button,
278 | html [type="button"], /* 1 */
279 | [type="reset"],
280 | [type="submit"] {
281 | -webkit-appearance: button; /* 2 */
282 | }
283 |
284 | /**
285 | * Remove the inner border and padding in Firefox.
286 | */
287 |
288 | button::-moz-focus-inner,
289 | [type="button"]::-moz-focus-inner,
290 | [type="reset"]::-moz-focus-inner,
291 | [type="submit"]::-moz-focus-inner {
292 | border-style: none;
293 | padding: 0;
294 | }
295 |
296 | /**
297 | * Restore the focus styles unset by the previous rule.
298 | */
299 |
300 | button:-moz-focusring,
301 | [type="button"]:-moz-focusring,
302 | [type="reset"]:-moz-focusring,
303 | [type="submit"]:-moz-focusring {
304 | outline: 1px dotted ButtonText;
305 | }
306 |
307 | /**
308 | * Correct the padding in Firefox.
309 | */
310 |
311 | fieldset {
312 | padding: 0.35em 0.75em 0.625em;
313 | }
314 |
315 | /**
316 | * 1. Correct the text wrapping in Edge and IE.
317 | * 2. Correct the color inheritance from `fieldset` elements in IE.
318 | * 3. Remove the padding so developers are not caught out when they zero out
319 | * `fieldset` elements in all browsers.
320 | */
321 |
322 | legend {
323 | box-sizing: border-box; /* 1 */
324 | color: inherit; /* 2 */
325 | display: table; /* 1 */
326 | max-width: 100%; /* 1 */
327 | padding: 0; /* 3 */
328 | white-space: normal; /* 1 */
329 | }
330 |
331 | /**
332 | * 1. Add the correct display in IE 9-.
333 | * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
334 | */
335 |
336 | progress {
337 | display: inline-block; /* 1 */
338 | vertical-align: baseline; /* 2 */
339 | }
340 |
341 | /**
342 | * Remove the default vertical scrollbar in IE.
343 | */
344 |
345 | textarea {
346 | overflow: auto;
347 | }
348 |
349 | /**
350 | * 1. Add the correct box sizing in IE 10-.
351 | * 2. Remove the padding in IE 10-.
352 | */
353 |
354 | [type="checkbox"],
355 | [type="radio"] {
356 | box-sizing: border-box; /* 1 */
357 | padding: 0; /* 2 */
358 | }
359 |
360 | /**
361 | * Correct the cursor style of increment and decrement buttons in Chrome.
362 | */
363 |
364 | [type="number"]::-webkit-inner-spin-button,
365 | [type="number"]::-webkit-outer-spin-button {
366 | height: auto;
367 | }
368 |
369 | /**
370 | * 1. Correct the odd appearance in Chrome and Safari.
371 | * 2. Correct the outline style in Safari.
372 | */
373 |
374 | [type="search"] {
375 | -webkit-appearance: textfield; /* 1 */
376 | outline-offset: -2px; /* 2 */
377 | }
378 |
379 | /**
380 | * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
381 | */
382 |
383 | [type="search"]::-webkit-search-cancel-button,
384 | [type="search"]::-webkit-search-decoration {
385 | -webkit-appearance: none;
386 | }
387 |
388 | /**
389 | * 1. Correct the inability to style clickable types in iOS and Safari.
390 | * 2. Change font properties to `inherit` in Safari.
391 | */
392 |
393 | ::-webkit-file-upload-button {
394 | -webkit-appearance: button; /* 1 */
395 | font: inherit; /* 2 */
396 | }
397 |
398 | /* Interactive
399 | ========================================================================== */
400 |
401 | /*
402 | * Add the correct display in IE 9-.
403 | * 1. Add the correct display in Edge, IE, and Firefox.
404 | */
405 |
406 | details, /* 1 */
407 | menu {
408 | display: block;
409 | }
410 |
411 | /*
412 | * Add the correct display in all browsers.
413 | */
414 |
415 | summary {
416 | display: list-item;
417 | }
418 |
419 | /* Scripting
420 | ========================================================================== */
421 |
422 | /**
423 | * Add the correct display in IE 9-.
424 | */
425 |
426 | canvas {
427 | display: inline-block;
428 | }
429 |
430 | /**
431 | * Add the correct display in IE.
432 | */
433 |
434 | template {
435 | display: none;
436 | }
437 |
438 | /* Hidden
439 | ========================================================================== */
440 |
441 | /**
442 | * Add the correct display in IE 10-.
443 | */
444 |
445 | [hidden] {
446 | display: none;
447 | }
448 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | CCUSA Disaster Operations Map
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 |
47 |
48 |
49 |
50 |
51 |
52 |
83 |
84 |
85 |
86 |
87 |
88 |
96 |
97 |
98 |
99 |
Social Vulnerability
100 | Index scores range from 0 to 1, which depicts the percentiles of a particular county or tract relative to the rest of the USA. The higher the percentile ranking, the more vulnerable an area is in that category. A red flag indicates that an area is highly vulnerable, or in the top 90th percentile of a particular vulnerability.
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 | Total Flags
109 |
110 |
111 |
112 |
113 |
114 |
County/Tract
115 |
Population:
116 |
117 |
118 |
119 |
120 |
Catholic Diocese:
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
Hazard Risk
130 |
131 | Hazard Risk is shown on a scale of 0-60. Data page contains more information about the factors considered for each.
132 | Hurricane
133 | Flood
134 | Earthquake
135 | Wildfire
136 | Tornado
137 | Hail
138 |
139 |
73 | Two data sources are used in the Disaster Operations Map.
74 | First, the Social Vulnerability Index (SVI) is a public data base curated by the Center for Disease Control (CDC).
75 | Second, te Natural Hazard Housing Risk Index is a proprietary data set released by ATTOM Data Solutions.
76 |
77 | Social Vulnerability Index (CDC 2018)
78 | Natural Hazard Housing Risk Index (ATTOM 2016)
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
Methodology
90 | We pull the data we need from these files and bring them into a .mbtiles file to use with Mapbox and D3.js. Full methodology on this data manipulation is available on the GitHub
91 | page.
92 |
93 |
99 |
100 | The Overall Social Vulnerability Index (SVI) is a composite score of four broad vulnerability indicators: Socioeconomic Status, Household Composition, Minority Status/Language, and Housing and Transportation.
101 | Each sub-category is calculated from specific indicators described in the table below.
102 |
103 |
104 | Index scores range from 0 to 1; which depicts the percentiles of a particular county or tract relative to the rest of the USA.
105 | The higher the percentile ranking, the more vulnerable an area is in that category. A red flag indicates that an area is highly vulnerable, or in the top 90th percentile of a particular vulnerability.
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
Indicator
114 |
Vulnerability Category
115 |
Description
116 |
117 |
118 |
Below Poverty
119 |
Socioeconomic Status
120 |
Persons below poverty estimate
121 |
122 |
123 |
Unemployed
124 |
Socioeconomic Status
125 |
Civilian (age 16+)
126 |
127 |
128 |
Income
129 |
Socioeconomic Status
130 |
Per capita income
131 |
132 |
133 |
No High School Diploma
134 |
Socioeconomic Status
135 |
Persons (age 25+) with no high school diploma
136 |
137 |
138 |
139 |
Aged 65 or older
140 |
Household Composition
141 |
Persons aged 65 or older
142 |
143 |
144 |
Aged 17 or younger
145 |
Household Composition
146 |
Persons aged 17 or younger
147 |
148 |
149 |
Civilian with a disability
150 |
Household Composition
151 |
Civilian noninstitutionalized
152 |
153 |
154 |
Single-Parent Households
155 |
Household Composition
156 |
Single parent household with children under 18
157 |
158 |
159 |
160 |
161 |
162 |
Minority
163 |
Minority Status/Language
164 |
Minority (all persons except white, non-Hispanic)
165 |
166 |
167 |
Speak English “Less than Well”
168 |
Minority Status/Language
169 |
Persons (age 5+) who speak English "less than well"
170 |
171 |
172 |
173 |
Multi-Unit Structures
174 |
Housing and Transportation
175 |
Housing in structures with 10 or more units
176 |
177 |
178 |
Mobile Homes
179 |
Housing and Transportation
180 |
Mobile homes
181 |
182 |
183 |
Crowding
184 |
Housing and Transportation
185 |
At household level (occupied housing units), more people than rooms
186 |
187 |
188 |
No Vehicle
189 |
Housing and Transportation
190 |
Households with no vehicle available estimate
191 |
192 |
193 |
Population
194 |
195 |
196 |
197 |
198 |
Location
199 |
200 |
Text description of tract, county, and state
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
Natural Hazard Housing Risk Index
212 |
Level of disaggregation: more than 3,000 USA counties
218 |
219 | The Hazard Risk is an additive composite of six measures: Hurricane, Flood, Earthquake, Wildfire, Tornado, and Hail.
220 | Each hazard risk component is measured on a scale from 0-60, with a potential Overall Hazard Risk of 360.
221 |
222 |
223 |
224 |
225 |
226 |
227 |
Indicator
228 |
Description
229 |
230 |
231 |
Overall Hazard Risk
232 |
Descrip
233 |
234 |
235 |
Hurricane Risk
236 |
Data is from FEMA and the National Hurricane Center (NHC), and risk level is based on two factors with equal weight: number and intensity of hurricane strikes historically; and percentage of homes located in flood zones identified as having a risk of “storm-induced waves”
237 |
238 |
239 |
Flood Risk
240 |
Data is based on flood zones created by the Federal Emergency Management Agency (FEMA), and the level of risk was based on the percentage of homes in each county located in high-risk flood zones
241 |
242 |
243 |
Earthquake Risk
244 |
Data is from the United States Geological Survey (USGS), and the level of risk was based on the probability of a magnitude 5.0 earthquake in each county
245 |
246 |
247 |
Wildfire Risk
248 |
Data is from the United States Department of Agriculture Forest Service and Fire Modeling Institute, and risk level is based on the percentage of homes in each county located in “Very High” or “High” Wildfire Hazard Potential (WHP) areas.
249 |
250 |
251 |
Tornado Risk
252 |
Data is from the National Oceanic and Atmospheric Administration (NOAA), and level of risk was based on the Destruction Potential Index (DPI) for each county. DPI is calculated using number of tornadoes, path of tornadoes in square miles, and intensity of tornadoes on the Fujita scale.
253 |
254 |
255 |
Hail Risk
256 |
Data is from NOAA and the risk level is based on the average number of hail storms per year in each county with hail that exceeds 1-inch in size over the past 15 years.