improved d3 view: file is now a parameter and the columns are dynamically read from the file