SVG - векторный формат. Поэтому, если вы просто измените атрибуты width и height корневого элемента на 100% каждый и оставите область просмотра на исходных значениях пикселей, она заполнит доступное пространство, в то время как каждая координата будет пересчитана анализатором. Размер отображаемого изображения теперь зависит от того, где оно встроено.
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 432 275">
Кроме того, вместо использования JavaScript для эффектов наведения я бы использовал CSS (например, polygon:hover { fill: #32cd32; }
).