asciigraph

Go 软件包,用于在命令行应用程序中制作轻量级 ASCII 线图╭┈╯,无需其他依赖项。「Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.」

Github stars Tracking Chart

.. --restructuredtext--

asciigraph

.. image:: https://travis-ci.org/guptarohit/asciigraph.svg?branch=master
:target: https://travis-ci.org/guptarohit/asciigraph
:alt: Build status

.. image:: https://goreportcard.com/badge/github.com/guptarohit/asciigraph
:target: https://goreportcard.com/report/github.com/guptarohit/asciigraph
:alt: Go Report Card

.. image:: https://coveralls.io/repos/github/guptarohit/asciigraph/badge.svg?branch=master
:target: https://coveralls.io/github/guptarohit/asciigraph?branch=master
:alt: Coverage Status

.. image:: https://godoc.org/github.com/guptarohit/asciigraph?status.svg
:target: https://godoc.org/github.com/guptarohit/asciigraph
:alt: GoDoc

.. image:: https://img.shields.io/badge/licence-BSD-blue.svg
:target: https://github.com/guptarohit/asciigraph/blob/master/LICENSE
:alt: License

.. image:: https://awesome.re/mentioned-badge-flat.svg
:target: https://github.com/avelino/awesome-go#advanced-console-uis
:alt: Mentioned in Awesome Go, Go package to make lightweight ASCII line graphs ╭┈╯.

.. image:: https://user-images.githubusercontent.com/7895001/41509956-b1b2b3d0-7279-11e8-9d19-d7dea17d5e44.png

Installation

::

go get github.com/guptarohit/asciigraph

Usage

Basic graph
^^^^^^^^^^^

.. code:: go

package main

import (
    "fmt"
    "github.com/guptarohit/asciigraph"
)

func main() {
    data := []float64{3, 4, 9, 6, 2, 4, 5, 8, 5, 10, 2, 7, 2, 5, 6}
    graph := asciigraph.Plot(data)

    fmt.Println(graph)
}

Running this example would render the following graph:

::

10.00 ┤ ╭╮
9.00 ┤ ╭╮ ││
8.00 ┤ ││ ╭╮││
7.00 ┤ ││ ││││╭╮
6.00 ┤ │╰╮ ││││││ ╭
5.00 ┤ │ │ ╭╯╰╯│││╭╯
4.00 ┤╭╯ │╭╯ ││││
3.00 ┼╯ ││ ││││
2.00 ┤ ╰╯ ╰╯╰╯

..

Command line interface

This package also brings a small utility for command line usage. Assuming
$GOPATH/bin is in your $PATH, simply go get it then install CLI.

CLI Installation
^^^^^^^^^^^^^^^^

::

go install github.com/guptarohit/asciigraph/cmd/asciigraph

Feed it data points via stdin:

::

$ seq 1 72, asciigraph -h 10 -c "plot data from stdin"
72.00 ┼
65.55 ┤ ╭────
59.09 ┤ ╭──────╯
52.64 ┤ ╭──────╯
46.18 ┤ ╭──────╯
39.73 ┤ ╭──────╯
33.27 ┤ ╭───────╯
26.82 ┤ ╭──────╯
20.36 ┤ ╭──────╯
13.91 ┤ ╭──────╯
7.45 ┤ ╭──────╯
1.00 ┼──╯
plot data from stdin

..

Acknowledgement

This package is golang port of library asciichart <https://github.com/kroitor/asciichart>_ written by @kroitor <https://github.com/kroitor>_.

Contributing

Feel free to make a pull request! :octocat:

Overview

Name With Ownerguptarohit/asciigraph
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:BSD 3-Clause "New" or "Revised" License
Release Count18
Last Release Namev0.7.1 (Posted on 2024-03-31 00:50:36)
First Release Namev0.1.1 (Posted on 2018-06-23 19:51:32)
Created At2018-06-17 10:37:16
Pushed At2024-04-06 20:33:09
Last Commit At2024-03-31 00:46:16
Stargazers Count2.5k
Watchers Count30
Fork Count96
Commits Count116
Has Issues Enabled
Issues Count20
Issue Open Count6
Pull Requests Count26
Pull Requests Open Count1
Pull Requests Close Count5
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top