Si, el codigo cambiaria bastante, ya que solo te ocuparias de decirle que columna mostrar, y dentro del codigo ocultarias todas las demas... es mucho mas prolijo el codigo tambien.
Seria algo asi:
Código Javascript
:
Ver original<script type="text/javascript">
function mostrarColumna(num) {
fila=document.getElementById('tabla1').getElementsByTagName('tr');
for(i=0;i<fila.length;i++) {
if (i == num) {
fila[i].getElementsByTagName('td')[num].style.display = "block";
} else {
fila[i].getElementsByTagName('td')[num].style.display = "none";
}
}
}
</script>
Entonces con esto, ahora llamarias a la funcion asi: