%let name=europe_country_names_pronounce; filename odsout '.'; /* Set your current-working-directory (to read/write files), if you need to ... %let rc=%sysfunc(dlgcdir('c:\someplace\public_html')); */ filename odsout '.'; /* Similar to this map: https://www.reddit.com/r/MapFans/comments/9govo1/what_countries_call_themselves/ but with drilldowns to pronunciation pages Found text for actual country names on Wikipedia pages. Copy-n-pasted the country name text here to get the Unicode chars: https://unicodelookup.com/#Espa%C3%B1a/ Substituted the country name text here to get the pronunciation url: https://forvo.com/word/espa%C3%B1a/ */ data my_data; length country_us country_native $100 pronunciation_link $300; country_us='Russia'; country_native='0420043e044104410438044f'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%D1%80%D0%BE%D1%81%D1%81%D0%B8%D1%8F/#ru'; lat=57.5017484; long=35.0890984; output; country_us='Ireland'; country_native='00c9006900720065'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%C3%A9ire/'; lat=53.3236495; long=-8.0; output; country_us='Iceland'; country_native='00cd0073006c0061006e0064'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%C3%ADsland/'; lat=64.7929395; long=-18.4461215; output; country_us='Turkey'; country_native='005400fc0072006b006900790065'x; unicode='yes'; pronunciation_link='https://forvo.com/word/t%C3%BCrkiye/'; lat=39.2022916; long=34.0314069; output; country_us='Spain'; country_native='004500730070006100f10061'x; unicode='yes'; pronunciation_link='https://forvo.com/word/espa%C3%B1a/'; lat=39.2625179; long=-3.7622068; output; country_us='France'; country_native='005200e9007000750062006c00690071007500650020006600720061006e00e70061006900730065'x; unicode='yes'; pronunciation_link='https://forvo.com/search/R%C3%A9publique%20fran%C3%A7aise/'; lat=45.6706989; long=2.2843748; output; country_us='Germany'; country_native='Deutschland'; unicode='no'; pronunciation_link='https://forvo.com/word/deutschland/'; lat=51.8; long=10.9189468; output; country_us='Ukraine'; country_native='0423043a044004300457043d0430'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%D1%83%D0%BA%D1%80%D0%B0%D1%97%D0%BD%D0%B0/'; lat=50.0066129; long=30.3141503; output; country_us='Belarus'; country_native='04110435043b0430044004430441044c'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%D0%B1%D0%B5%D0%BB%D0%B0%D1%80%D1%83%D1%81%D1%8C/'; lat=53.2522807; long=27.4173642; output; country_us='Norway'; country_native='Norge'; unicode='no'; pronunciation_link='https://forvo.com/word/norge/'; lat=61.4020914; long=10.0402887; output; country_us='Sweden'; country_native='Sverige'; unicode='no'; pronunciation_link='https://forvo.com/word/sverige/'; lat=64.3543965; long=16.9169801; output; country_us='Finland'; country_native='Suomi'; unicode='no'; pronunciation_link='https://forvo.com/word/suomi/'; lat=62.3792791; long=25.4445066; output; country_us='United Kingdom'; country_native='UK'; unicode='no'; pronunciation_link='https://forvo.com/word/united_kingdom/'; lat=53.0; long=-1.5622334; output; country_us='Poland'; country_native='Polska'; unicode='no'; pronunciation_link='https://forvo.com/word/polska/'; lat=52.1594256; long=19.8721301; output; country_us='Romania'; country_native='0052006f006d00e2006e00690061'x; unicode='yes'; pronunciation_link='https://forvo.com/word/rom%C3%A2nia/'; lat=45.773731; long=24.934295; output; country_us='Portugal'; country_native='00520065007000fa0062006c00690063006100200050006f00720074007500670075006500730061'x; unicode='yes'; pronunciation_link='https://forvo.com/search/Rep%C3%BAblica%20Portuguesa/'; lat=40.9299942; long=-7.8656979; output; country_us='Italy'; country_native='Italia'; unicode='no'; pronunciation_link='https://forvo.com/word/italia/'; lat=42.3677187; long=13.0457051; output; country_us='Estonia'; country_native='Eesti'; unicode='no'; pronunciation_link='https://forvo.com/word/eesti/'; lat=58.8742946; long=25.4488896; output; country_us='Latvia'; country_native='Latvija'; unicode='no'; pronunciation_link='https://forvo.com/word/latvija/'; lat=56.9745255; long=24.9012921; output; country_us='Lithuania'; country_native='Lietuva'; unicode='no'; pronunciation_link='https://forvo.com/word/lietuva/'; lat=55.6252079; long=24.0465547; output; country_us='Bulgaria'; country_native='0411044a043b0433043004400438044f'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%D0%B1%D1%8A%D0%BB%D0%B3%D0%B0%D1%80%D0%B8%D1%8F/'; lat=42.6926113; long=24.9904321; output; country_us='Denmark'; country_native='Danmark'; unicode='no'; pronunciation_link='https://forvo.com/word/danmark/'; lat=56.3388155; long=9.0973988; output; country_us='Belgium'; country_native='00420065006c0067006900eb'x; unicode='yes'; pronunciation_link='https://forvo.com/word/belgi%C3%AB/'; lat=50.8818013; long=4.3623776; output; country_us='Netherlands'; country_native='Nederland'; unicode='no'; pronunciation_link='https://forvo.com/word/nederland/'; lat=52.6638105; long=5.2387517; output; country_us='Czech Republic'; country_native='010c00650073006b006f'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%C4%8Desko/'; lat=49.8714705; long=14.9756897; output; country_us='Slovakia'; country_native='Slovensko'; unicode='no'; pronunciation_link='https://forvo.com/word/slovensko/'; lat=48.9102382; long=19.0771417; output; country_us='Switzerland'; country_native='Confoederatio Helvetica'; unicode='no'; pronunciation_link='https://forvo.com/word/confoederatio_helvetica/'; lat=47.0230864; long=7.9865305; output; country_us='Austria'; country_native='00d6007300740065007200720065006900630068'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%C3%B6sterreich/'; lat=47.6689537; long=14.7380776; output; country_us='Slovenia'; country_native='Slovenija'; unicode='no'; pronunciation_link='https://forvo.com/word/slovenija/'; lat=46.245984; long=14.6916228; output; country_us='Croatia'; country_native='Hrvatska'; unicode='no'; pronunciation_link='https://forvo.com/word/hrvatska/'; lat=45.1692774; long=15.4033619; output; country_us='Bosnia and Herzegovina'; country_native='Bosna i Hercegovina'; unicode='no'; pronunciation_link='https://forvo.com/word/bosna_i_hercegovina/'; lat=44.005846; long=17.0945598; output; country_us='Serbia'; country_native='042104400431043804580430'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%D1%81%D1%80%D0%B1%D0%B8%D1%98%D0%B0/'; lat=44.815247; long=20.4683662; output; country_us='Hungary'; country_native='004d00610067007900610072006f00720073007a00e10067'x; unicode='yes'; pronunciation_link='https://forvo.com/word/magyarorsz%C3%A1g/'; lat=47.0572131; long=18.9916855; output; country_us='Montenegro'; country_native='04260440043d043000200413043e04400430'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%D1%86%D1%80%D0%BD%D0%B0_%D0%B3%D0%BE%D1%80%D0%B0/'; lat=43.0397201; long=18.6658767; output; country_us='Greece'; country_native='039503bb03bb03ac03b403b1'x; unicode='yes'; pronunciation_link='https://forvo.com/word/%CE%B5%CE%BB%CE%BB%CE%AC%CE%B4%CE%B1/'; lat=39.0682827; long=21.9002131; output; country_us='Macedonia'; country_native='041c0430043a04350434043e043d043804580430'x; unicode='yes'; pronunciation_link='https://forvo.com/search/%D0%9C%D0%B0%D0%BA%D0%B5%D0%B4%D0%BE%D0%BD%D0%B8%D1%98%D0%B0'; lat=41.7183556; long=21.5932999; output; country_us='Albania'; country_native='0053006800710069007000eb007200690061'x; unicode='yes'; pronunciation_link='https://forvo.com/word/shqip%C3%ABria/'; lat=40.7387968; long=19.9738828; output; country_us='Moldova'; country_native='Moldova'; unicode='no'; pronunciation_link='https://www.macmillandictionary.com/us/pronunciation/american/moldova'; lat=47.3486161; long=28.5408114; output; run; data my_map; set mapsgfk.world (where=(density<=2 and idname not in ('Greenland' 'Svalbard and Jan Mayen'))); if idname='Russian Federation' then idname='Russia'; run; proc gproject data=my_map out=my_map latlong eastlong degrees dupok project=miller2 latmin=34.5 latmax=73 longmin=-25 longmax=43 parmout=projparm; id id; run; proc gproject data=my_data out=my_data latlong eastlong degrees dupok project=miller2 parmin=projparm parmentry=my_map; id; run; data anno_names; set my_data; length function $8 style $35 html $300; xsys='2'; ysys='2'; hsys='3'; when='a'; function='label'; size=2.6; color='blue'; if unicode='yes' then style='albany amt/unicode'; else style='albany amt'; if country_us in ('Portugal' 'Bulgaria' 'Denmark' 'Belgium' 'Netherlands' 'Czech Republic' 'Slovakia' 'Moldova') then size=size*.80; if country_us in ('Switzerland' 'Austria' 'Slovenia' 'Croatia' 'Macedonia' 'Bosnia and Herzegovina' 'Serbia' 'Hungary' 'Montenegro' 'Albania') then size=size*.60; text=trim(left(country_native)); position='5'; html= 'title='||quote(trim(left(country_us)))|| ' href='||quote(trim(left(pronunciation_link))); run; data map_data; set anno_names; idname=country_us; my_html=html; run; /* Use this data, if you just want to see the SAS-map name for each country in mouse-over */ /* data map_data; set mapsgfk.world_attr; if idname='Russian Federation' then idname='Russia'; country_us=idname; length my_html $300; my_html='title='||quote(trim(left(idname))); run; */ goptions device=png; goptions xpixels=1020 ypixels=720; goptions border cback=cxF0F8FF; ODS LISTING CLOSE; ODS HTML path=odsout body="&name..htm" (title="What Countries Call Themselves (Europe)") style=htmlblue; goptions gunit=pct htitle=5.5 ftitle="albany amt/bold" htext=1.9 ftext="albany amt"; goptions ctext=gray33; pattern1 v=s c=grayf9 repeat=1000; title1 h=1 ' '; proc gmap data=map_data map=my_map all anno=anno_names; id idname; note move=(8,93) h=18pt font='albany amt/bold' "What Countries Call Themselves"; note move=(9,88) h=14pt c=gray77 "click country names to hear pronunciations"; choro country_us / nolegend cdefault=grayf9 coutline=grayaa html=my_html des='' name="&name"; run; quit; ODS HTML CLOSE; ODS LISTING;