andrew,
@andrew@fediscience.org avatar

ahhhh this is so cool! Finally decided to play with #QuartoPub dashboards (https://quarto.org/docs/dashboards/ ) and ObservableJS to automatically grab data from multiple Google Sheets and plot/show the data. No need for Shiny or anything—refreshing the page gets the latest data!

andrew,
@andrew@fediscience.org avatar

(huge thanks to @hrbrmstr for pointing me to fantastic OJS resources!) https://fediscience.org/@hrbrmstr@mastodon.social/111700918783663587

jonthegeek,
@jonthegeek@fosstodon.org avatar

@andrew how hard was it to pick up the OJS to make this work? What prereqs did you already have covered that might make it take longer for someone else? I'm trying to decide if I should add this to my toolkit. It seems reallllllly likely, but I don't want to overcommit myself.

andrew,
@andrew@fediscience.org avatar
jimgar,

@jonthegeek @andrew If you look at Andrew’s previous toot boB Rudis gave him some ref material.

I didn’t have any prior JS experience and was able to make some OJS plots last year after watching a few hour-long intro vids by @allison_horst on the Observable YouTube channel. There are templates for different plots in Observable notebooks. And you can convert R data sources to OJS ones too, so no need for a JS dplyr-alike such as Arquero https://quarto.org/docs/interactive/ojs/

andrew,
@andrew@fediscience.org avatar

@jimgar @jonthegeek @allison_horst Yeah, the documentation for Observable Plot is pretty good (https://observablehq.com/plot/features/marks) and has tons of examples, and it generally follows the grammar of graphics (marks = geoms, for instance), and @hrbrmstr 's resources here are great (https://mastodon.social/@hrbrmstr/111700918653234426)

andrew,
@andrew@fediscience.org avatar

@jimgar @jonthegeek @allison_horst @hrbrmstr I'm currently using it only for plotting bc I'm afraid of figuring out all the data processing stuff, so I do that in R (hence the {plumber} API), but if I were smarter, I could probably just grab the Google Sheets CSVs directly with OJS, clean up the data, and plot it all in one live document

jimgar,

@andrew @jonthegeek @allison_horst @hrbrmstr tbh looking at your plumber code, you might want to check out Allison’s notebook: Data wrangling with Arquero for R users https://observablehq.com/@observablehq/data-wrangling-with-arquero-from-r

I feel like the hardest part of a full OJS translation could be reading in those google sheets, but you never know… :)

andrew,
@andrew@fediscience.org avatar

@jimgar @jonthegeek @allison_horst Ooh this looks super helpful!

andrew,
@andrew@fediscience.org avatar

@jimgar @jonthegeek @allison_horst K, this made me figure out Arquero, which turns out to be really neat! And it led me to make a whole tutorial for the whole process! https://www.andrewheiss.com/blog/2024/01/12/diy-api-plumber-quarto-ojs/

smach,
@smach@masto.machlis.com avatar

@andrew I REALLY need to take Quarto dashboards for a spin

andrew,
@andrew@fediscience.org avatar
andrew,
@andrew@fediscience.org avatar

Next up, move all the data processing to a {plumber} API instead so that I can get data from both Google Sheets and Goodreads RSS (they have no API 😭) and show it all here simultaneously

andrew,
@andrew@fediscience.org avatar

Here's a minimum working example (along with a sample {plumber} API)

https://github.com/andrewheiss/books-dashboard-quarto

johnlray,
@johnlray@mastodon.social avatar

@andrew omg this is exactly what I've been looking to make this year to get better about obsessively tracking my habits

andrew,
@andrew@fediscience.org avatar

@johnlray I'm going to post everything to GitHub once I'm done so you can copy/adapt all you want!

andrew,
@andrew@fediscience.org avatar
johnlray,
@johnlray@mastodon.social avatar

@andrew Frankly taking it as a personal attack how quickly you go from "I will blog about this" to "I blogged about this"

andrew,
@andrew@fediscience.org avatar
  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • DreamBathrooms
  • magazineikmin
  • ethstaker
  • khanakhh
  • rosin
  • Youngstown
  • everett
  • slotface
  • ngwrru68w68
  • mdbf
  • GTA5RPClips
  • kavyap
  • thenastyranch
  • cisconetworking
  • JUstTest
  • cubers
  • Leos
  • InstantRegret
  • Durango
  • tacticalgear
  • tester
  • osvaldo12
  • normalnudes
  • anitta
  • modclub
  • megavids
  • provamag3
  • lostlight
  • All magazines