Data from Google Spreadsheets into Isadora

  • Beta Gold

    I am trying to pull numerical data from a google spreadsheet into Isadora.

    From what I see, the options are either to write a patch in MaxMsp or Processing that imports the data from the google doc, then output it to isadora as graphic through syphon, or to somehow convert the data from the google doc into a text file and use the data array actor.
    I'm looking for the quickest way, with the lowest level of programming needed.
    Has anyone dealt with this before and maybe has a patch that's easy to adapt?
  • Tech Staff

    I would suggest that easier methods exist with Isadora 2.0 and the use of Javascript.

  • Beta Platinum

    If it's fine to export the document from google docs, you can also simply export the data from a google spreadsheet as a tab separated value (.tsv) file (which works just like a .txt file) and open that file using the data array actor as you normally would.

    Here's a data array patch example using a test file downloaded as a .tsv...

    And as @Dusx suggests using  Javascript in 2.0 would let you pull the data directly from your live documents...

    c3301e-google-spreadsheet-data-array.izz 232821-sheet1.txt

  • Tech Staff

    Getting the data live would require using the TCP-IP actors, and passing the returned text to either Javascript or a text actor of some type.
    If possible, I think @ian idea is great! It really makes it much simpler.

  • Beta Gold

    Just got 2.0, so I'm eager to see what that has in store.

    Thanks for the patch, Ian. It's good to know that the data array actor can work with .tsv files.
    I'll still need to code something that will automatically save the google spreadsheet to .tsv periodically.
    I failed to mention that this is a live updating spreadsheet and I want to get the data projected live, with minimal human intervention.
  • Tech Staff

    Well if its necessary to be live data, then using the the TCP-ip actors is a good option.
    You would need to make the spreadsheet a publicly accessible page (for viewing only).

    This way you can grab the data with the TCP-IP acotrs (assuming that the data isn't loaded via ajax, that might cause a problem). Then pass the whole string to a Javascript actor for easy parsing.

    see may tutorial on TCP-IP here:

    note, that the actors have changed a bit in 2.0 but it still works the same for the most part.