I’d like to announce TableView.jl, a WebIO.jl based package for inspecting arbitrarily large Tables.jl-compatible tables (
DataFrames, Queryverse-tables, etc…).
Multi-column filtering and sorting works for small datasets (< 10k rows) and is completly handled by the frontend. For large datasets (which are lazy-loaded into the UI, so there’s nothing stopping you from viewing tables with arbitrarily many rows) this does not work yet, but could be implemented in the backend.
It might be possible to extend this package’s functionality to include editing cells, but there are no immediate plans for that from my side.
IJulia and Juno* natively display the output of
showtable, but if you’re working in the REPL you’ll need to use e.g. Blink.jl to display the table (see screenshot above).
*) Only works with WebIO 0.7.x right now, but I’m working on a fix for newer versions.
Great! This was of the few remaining reasons I use Stata for data analysis instead of Julia.
The next major reason is Stata’s great support for panel data. It does lags and differences as a simple L.varname or D.varname once you’ve specified the ID and time keys.
A bit off topic but this will also be getting an upgrade as soon as a re-write for formula constructors is finished in this PR.
What are the basic requirements to implement this? Does it have to be an Electron window or is it just anything that can render the html?
Also I agree with piever, a slightly more lightweight option would also be cool.
Anything that can render WebIO contexts, which means HTML+JS+WebSockets, basically.
I don’t think he wanted a more lightweight option, just that the filter and sort buttons are disabled unless they actually work (which I definitely agree with). You can look into BrowseTables.jl for a pure HTML solution though.
v0.2.0 is out now, with a few improvements:
- better default for table height (#11)
- hide filter/sort buttons for async tables (#12)
- use fixed ag-grid version (#13)