{"id":13619959,"url":"https://github.com/tj/histo","last_synced_at":"2025-04-05T17:09:26.338Z","repository":{"id":6599690,"uuid":"7842750","full_name":"tj/histo","owner":"tj","description":"beautiful charts in the terminal for static or streaming data","archived":false,"fork":false,"pushed_at":"2013-03-11T15:56:40.000Z","size":195,"stargazers_count":695,"open_issues_count":6,"forks_count":27,"subscribers_count":27,"default_branch":"master","last_synced_at":"2024-05-22T16:31:10.936Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tj.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-01-26T19:51:11.000Z","updated_at":"2023-12-28T11:19:00.000Z","dependencies_parsed_at":"2022-08-01T01:38:55.888Z","dependency_job_id":null,"html_url":"https://github.com/tj/histo","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fhisto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fhisto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fhisto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fhisto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tj","download_url":"https://codeload.github.com/tj/histo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247369953,"owners_count":20927928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T21:00:50.533Z","updated_at":"2025-04-05T17:09:26.311Z","avatar_url":"https://github.com/tj.png","language":"C","readme":"# Histo\n\n  Plot charts in the terminal with arbitrary streaming\n  or non-streaming data.\n\n```\n$ histo \u003c data.txt\n```\n\n  ![terminal histogram](http://i.cloudup.com/1359230211455.54961fc5a2db5b350ca5f1f89b8d37b3.png)\n\n## Features\n\n  - simple input via __stdin__\n  - simple C API for integration in your tools\n  - supports static or streaming data\n  - adjusts to terminal width and height\n  - adjusts x-axis labels to the integer size\n  - negative values reflect as shaded blocks\n\n## Use-cases\n\n  - cpu usage\n  - memory usage\n  - load averages\n  - ...\n\n## Installation\n\n  With [cpm](https://github.com/visionmedia/cpm):\n\n```\n$ cpm install visionmedia/histo\n```\n\n  Or via git clone:\n\n```\n$ cd /tmp \u0026\u0026 git clone git://github.com/visionmedia/histo.git --depth 1 \u0026\u0026 cd histo \u0026\u0026 make install\n```\n\n## Examples\n\n  `histo(1)` simply reads from stdin, so it works well with\n  streaming or non-streaming data, from any data source. This\n  repo includes some example files in `./examples`, as well\n  as some example shell scripts for streaming input.\n\n### Static input\n\n  `histo(1)` simply reads from stdin, so it's easy to throw static\n  data at it for quick analysis:\n\n```\n1\n4\n5\n12\n8\n15\n18\n20\n5\n2\n1\n5\n2\n10\n2\n```\n\n  Displayed with:\n\n```\n$ histo \u003c example.txt\n```\n\n### Dynamic input\n\n  You may stream data to `histo(1)` and tell it to quit with __EOF__,\n  for example here's a small shell script to generate some random\n  data:\n\n```sh\nwhile true; do\n  echo $RANDOM\n  sleep .5\ndone | histo\n```\n\n## Screenshots\n\n  Negative values are shown as shaded blocks:\n\n  ![histogram with negative values](http://i.cloudup.com/1359230211455.54961fc5a2db5b350ca5f1f89b8d37b3.png)\n\n  Adjusts properly to the size of the terminal:\n\n  ![size adjustment](http://i.cloudup.com/1359230206899.2c598d4a91643490bdb7be5d781b9e7c.png)\n\n  ![tall](http://i.cloudup.com/1359230209532.d602f47204f04da4448460a579ecbfa3.png)\n\n# License\n\n  MIT\n","funding_links":[],"categories":["C"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftj%2Fhisto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftj%2Fhisto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftj%2Fhisto/lists"}