Live data from Hacker News

Show HN: Plotting 3 years of hourly data in 150ms

leeoniya.github.io

1–10 of 118 posts

Re: Show HN: Plotting 3 years of hourly data in 150ms

#2
Unfortunately, I have to use Google Analytics and Google Ads at work every day, and these UIs have absolutely terrible performance :(

A small part of the problem is drawing the trend charts. So I decided to make uPlot [1] to see what was really possible.

[1] https://github.com/leeoniya/uPlot

Re: Show HN: Plotting 3 years of hourly data in 150ms

#3
This is awesome, thanks for sharing!

Question: in the demo you load papaparse but the data is delivered as JSON?

Would you mind sharing what your backend looks like for the project where you're using this, and how do you extract all of this data at once from storage?

Re: Show HN: Plotting 3 years of hourly data in 150ms

#4
post #2

Unfortunately, I have to use Google Analytics and Google Ads at work every day, and these UIs have absolutely terrible performance :( A small part of the problem is drawing the trend charts. So I decided to make uPlot [1] to see what was really possible. [1] https://github.com/leeoniya/uPlot

Hopefully the upvotes and being on the front page is enough, but if not just want to say props, this is amazing. Already had it saved in my bookmarks glad to see it pop up again :)

Re: Show HN: Plotting 3 years of hourly data in 150ms

#5

This is awesome, thanks for sharing! Question: in the demo you load papaparse but the data is delivered as JSON? Would you mind sharing what your backend looks like for the project where you're using this, and how do you extract all of this data at once from storage?

> Question: in the demo you load papaparse but the data is delivered as JSON?

good catch, leftovers from original PoC i made locally. the exported data was still in CSV back then. i should clean that up!

> Would you mind sharing what your backend looks like for the project where you're using this, and how do you extract all of this data at once from storage?

i just did a manual export from Analytics. how you get the data out is up to you, but a time-series or columnar database would probably be a good start :)

Re: Show HN: Plotting 3 years of hourly data in 150ms

#6
post #2

Unfortunately, I have to use Google Analytics and Google Ads at work every day, and these UIs have absolutely terrible performance :( A small part of the problem is drawing the trend charts. So I decided to make uPlot [1] to see what was really possible. [1] https://github.com/leeoniya/uPlot

Hopefully the upvotes and being on the front page is enough, but if not just want to say props, this is amazing. Already had it saved in my bookmarks glad to see it pop up again :)

thanks!

Re: Show HN: Plotting 3 years of hourly data in 150ms

#7
post #2

Unfortunately, I have to use Google Analytics and Google Ads at work every day, and these UIs have absolutely terrible performance :( A small part of the problem is drawing the trend charts. So I decided to make uPlot [1] to see what was really possible. [1] https://github.com/leeoniya/uPlot

Honestly the title doesn't do it justice. For a plotting tool it's not an impossible task, but making a webpage this responsive is incredibly hard, so well done there.

Re: Show HN: Plotting 3 years of hourly data in 150ms

#9
post #2

Unfortunately, I have to use Google Analytics and Google Ads at work every day, and these UIs have absolutely terrible performance :( A small part of the problem is drawing the trend charts. So I decided to make uPlot [1] to see what was really possible. [1] https://github.com/leeoniya/uPlot

Honestly the title doesn't do it justice. For a plotting tool it's not an impossible task, but making a webpage this responsive is incredibly hard, so well done there.

it's an understatement for sure :)

a lot of time is spent on just DOM layout and JITing the JS, which get amortized with huge datasets. the 166k bench doesnt take any longer.

Post reply on HN