Skip to content

raphasampaio/ProgressTables.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProgressTables.jl

CI codecov Aqua

Introduction

ProgressTables.jl is a Julia package designed to display progress and track values in the form of visually appealing tables. It is ideal for use in tasks such as training machine learning models, monitoring simulations, or simply displaying iterative computations in a clean, tabular format. The package supports customizable table headers, column widths, data formatting, colors, alignment, and borders, providing full flexibility to suit various needs.

Getting Started

Installation

julia> ] add ProgressTables

Example

using ProgressTables

pt = ProgressTable(
    header = ["Epoch", "Loss", "Accuracy"],
    widths = [10, 8, 16],
    format = ["%d", "%.2f", "%.3e"],
    color = [:normal, :normal, :blue],
    border = true,
    alignment = [:right, :center, :center],
)

epochs = 4

initialize(pt)
for epoch in 1:epochs
    next(pt, [epoch, 1 / epoch, epoch * 0.1])

    if epoch == 2
        separator(pt)
    end
end
finalize(pt)
┌──────────┬────────┬────────────────┐
│   Epoch  │  Loss  │    Accuracy    │
├──────────┼────────┼────────────────┤
│        1 │  1.00  │    1.000e-01   │
│        2 │  0.50  │    2.000e-01   │
├──────────┼────────┼────────────────┤
│        3 │  0.33  │    3.000e-01   │
│        4 │  0.25  │    4.000e-01   │
└──────────┴────────┴────────────────┘

Contributing

Contributions, bug reports, and feature requests are welcome! Feel free to open an issue or submit a pull request.

About

Display customizable progress tables

Resources

License

Stars

Watchers

Forks

Packages

No packages published