Dynamically changing the language of the map

HTML

<script src="http://cdn.amcharts.com/lib/3/ammap.js"></script>
<script src="http://cdn.amcharts.com/lib/3/maps/js/worldLow.js"></script>
<script src="http://cdn.amcharts.com/lib/3/lang-maps/de.js"></script>
<script src="http://cdn.amcharts.com/lib/3/lang-maps/fr.js"></script>
<script src="http://cdn.amcharts.com/lib/3/lang-maps/es.js"></script>
<script src="http://cdn.amcharts.com/lib/3/lang-maps/pt.js"></script>
<script src="http://cdn.amcharts.com/lib/3/lang-maps/ja.js"></script>
<script src="http://cdn.amcharts.com/lib/3/themes/none.js"></script>
<div id="chartdiv"></div>
<select id="langselect" onchange="setLanguage(this.options[this.selectedIndex].value);">
    <option value="en">English (default)</option>
    <option value="de" selected="selected">German</option>
    <option value="ja">Japanese</option>
    <option value="fr">French</option>
    <option value="es">Spanish</option>
    <option value="pt">Portuguese</option>
    <option value="cn">chinese</option>
</select>

CSS

#chartdiv {
	width	: 100%;
	height	: 500px;
}
#langselect {
    position: absolute;
    top: 30px;
    right: 30px;
    font-size: 15px;
    padding: 10px;
}

JavaScript

var map = AmCharts.makeChart("chartdiv", {
	"type": "map",
    "theme": "none",
    "language": "de",
    "pathToImages": "http://www.amcharts.com/lib/3/images/",
	"dataProvider": {
     "map": "worldLow",
		"getAreasFromMap": true
	},
	"areasSettings": {
		"autoZoom": true,
		"selectedColor": "#CC0000"
	}
});

function setLanguage(lang) {
    if ('en' == lang)
        map.language = null;
    else
        map.language = lang;
    map.validateData();
}