(window.webpackJsonp=window.webpackJsonp||[]).push([[68],{GBYl:function(e,t,a){"use strict";a.r(t),a.d(t,"_frontmatter",(function(){return o})),a.d(t,"default",(function(){return c}));var n=a("k1TG"),i=a("8o2o"),l=(a("q1tI"),a("7ljp")),r=a("hhGP"),o=(a("qKvR"),{});void 0!==o&&o&&o===Object(o)&&Object.isExtensible(o)&&!o.hasOwnProperty("__filemeta")&&Object.defineProperty(o,"__filemeta",{configurable:!0,value:{name:"_frontmatter",filename:"src/pages/docs/Miscellaneous/index.mdx"}});var u={_frontmatter:o},b=r.a;function c(e){var t=e.components,a=Object(i.a)(e,["components"]);return Object(l.b)(b,Object(n.a)({},u,a,{components:t,mdxType:"MDXLayout"}),Object(l.b)("h2",{id:"the-country-map-visualization"},"The Country Map Visualization"),Object(l.b)("p",null,"The Country Map visualization allows you to plot lightweight choropleth maps of\nyour countries by province, states, or other subdivision types. It does not rely\non any third-party map services but would require you to provide the\n",Object(l.b)("a",Object(n.a)({parentName:"p"},{href:"https://en.wikipedia.org/wiki/ISO_3166-2"}),"ISO-3166-2")," codes of your country's\ntop-level subdivisions. Comparing to a province or state's full names, the ISO\ncode is less ambiguous and is unique to all regions in the world."),Object(l.b)("h2",{id:"included-maps"},"Included Maps"),Object(l.b)("p",null,"The Country Maps visualization already ships with the maps for the following countries:"),Object(l.b)("ul",null,Object(l.b)("li",{parentName:"ul"},"Belgium"),Object(l.b)("li",{parentName:"ul"},"Brazil"),Object(l.b)("li",{parentName:"ul"},"Bulgaria"),Object(l.b)("li",{parentName:"ul"},"Canada"),Object(l.b)("li",{parentName:"ul"},"China"),Object(l.b)("li",{parentName:"ul"},"Egypt"),Object(l.b)("li",{parentName:"ul"},"France"),Object(l.b)("li",{parentName:"ul"},"Germany"),Object(l.b)("li",{parentName:"ul"},"India"),Object(l.b)("li",{parentName:"ul"},"Iran"),Object(l.b)("li",{parentName:"ul"},"Italy"),Object(l.b)("li",{parentName:"ul"},"Japan"),Object(l.b)("li",{parentName:"ul"},"Korea"),Object(l.b)("li",{parentName:"ul"},"Liechtenstein"),Object(l.b)("li",{parentName:"ul"},"Morocco"),Object(l.b)("li",{parentName:"ul"},"Myanmar"),Object(l.b)("li",{parentName:"ul"},"Netherlands"),Object(l.b)("li",{parentName:"ul"},"Portugal"),Object(l.b)("li",{parentName:"ul"},"Russia"),Object(l.b)("li",{parentName:"ul"},"Singapore"),Object(l.b)("li",{parentName:"ul"},"Spain"),Object(l.b)("li",{parentName:"ul"},"Switzerland"),Object(l.b)("li",{parentName:"ul"},"Syria"),Object(l.b)("li",{parentName:"ul"},"Thailand"),Object(l.b)("li",{parentName:"ul"},"Timorleste"),Object(l.b)("li",{parentName:"ul"},"UK"),Object(l.b)("li",{parentName:"ul"},"Ukraine"),Object(l.b)("li",{parentName:"ul"},"Uruguay"),Object(l.b)("li",{parentName:"ul"},"USA"),Object(l.b)("li",{parentName:"ul"},"Zambia")),Object(l.b)("h2",{id:"adding-a-new-country"},"Adding a New Country"),Object(l.b)("p",null,"To add a new country to the list, you'd have to edit files in\n",Object(l.b)("a",Object(n.a)({parentName:"p"},{href:"https://github.com/apache-superset/superset-ui/tree/master/plugins/legacy-plugin-chart-country-map"}),"@superset-ui/legacy-plugin-chart-country-map"),"."),Object(l.b)("ol",null,Object(l.b)("li",{parentName:"ol"},"Generate a new GeoJSON file for your country following the guide in ",Object(l.b)("a",Object(n.a)({parentName:"li"},{href:"https://github.com/apache-superset/superset-ui/blob/master/plugins/legacy-plugin-chart-country-map/scripts/Country%20Map%20GeoJSON%20Generator.ipynb"}),"this Jupyter notebook"),"."),Object(l.b)("li",{parentName:"ol"},"Edit the countries list in ",Object(l.b)("a",Object(n.a)({parentName:"li"},{href:"https://github.com/apache-superset/superset-ui/blob/master/plugins/legacy-plugin-chart-country-map/src/countries.js"}),"legacy-plugin-chart-country-map/src/countries.js"),"."),Object(l.b)("li",{parentName:"ol"},"Ping one of the Superset committers to get the ",Object(l.b)("inlineCode",{parentName:"li"},"@superset-ui/legacy-plugin-chart-country-map")," package published, or\npublish it under another name yourself."),Object(l.b)("li",{parentName:"ol"},"Update npm dependencies in ",Object(l.b)("inlineCode",{parentName:"li"},"superset-frontend/package.json")," to install the updated plugin package.")))}void 0!==c&&c&&c===Object(c)&&Object.isExtensible(c)&&!c.hasOwnProperty("__filemeta")&&Object.defineProperty(c,"__filemeta",{configurable:!0,value:{name:"MDXContent",filename:"src/pages/docs/Miscellaneous/index.mdx"}}),c.isMDXComponent=!0}}]);
//# sourceMappingURL=component---src-pages-docs-miscellaneous-index-mdx-bf83587e7a4352a8ef4f.js.map