Termgraph如何在Linux终端上绘制基本图形
时间:2020-02-23 14:31:28 来源:igfitidea点击:
在本教程中,我们将学习如何使用名为Termgraph的基于python的工具在Linux终端上绘制基本图形。 Termgraph可用于在终端上绘制许多图形,例如;条形图,颜色图表,多变量,堆叠图表,水平或者垂直和表情符号。
在Linux上安装Termgraph
以下是安装和使用Termgraph在终端上绘制基本图形的步骤。
安装Python3
Termgraph需要在本地系统上安装python3. 对于Arch Linux用户,python3是操作系统随附的默认版本。
在CentOS上安装Python3
如果运行的是CentOS 7/6或者任何其他RHEL派生产品,则EPEL存储库中提供了python3.
添加EPEL存储库,然后使用以下命令安装Python3:
sudo yum install -y epel-release sudo yum install -y python36-setuptools git
在Ubuntu上安装Python 3
Ubuntu 18.04和其他最新版本随附Python3.x。
$python3 -V Python 3.6.7
对于较旧的Ubuntu系统,jonathonf
PPA上提供了Python3,请使用以下命令将其添加:
sudo add-apt-repository ppa:jonathonf/python-3.6
然后安装python3.
sudo apt-get update sudo apt-get install -y git python3.6
安装colorama Python模块
要安装colorama,我们需要安装pip3. 如果尚未安装,请运行以下命令进行安装;
在RHEL衍生产品上:
sudo easy_install-3.6 pip
关于Debian衍生产品:
sudo apt-get install -y python3-pip
一旦安装了pip3,请使用以下命令安装colorama:
sudo pip3 install colorama
在Linux上安装Termgraph
要使用适用于Python的pip3软件包管理器安装termgraph,请执行以下操作:
$sudo pip3 install termgraph Collecting termgraph Downloading https://files.pythonhosted.org/packages/6e/45/955060f2957c31d448b926519ebedf12ff0f516b3f22312655f2b52b3894/termgraph-0.2.0-py3-none-any.whl Requirement already satisfied: colorama in /usr/lib/python3/dist-packages (from termgraph) Installing collected packages: termgraph Successfully installed termgraph-0.2.0
现在我们可以使用术语图绘制图形了。
$which termgraph /usr/local/bin/termgraph
检查帮助页面以了解术语图的基本用法:
$termgraph --help usage: termgraph [-h] [--title TITLE] [--width WIDTH] [--format FORMAT] [--suffix SUFFIX] [--no-labels] [--color [{red,blue,green,magenta,yellow,black,cyan} [{red,blue,green,magenta,yellow,black,cyan} ...]]] [--vertical] [--stacked] [--different-scale] [--calendar] [--start-dt START_DT] [--custom-tick CUSTOM_TICK] [--delim DELIM] [--verbose] [--version] [filename] draw basic graphs on terminal positional arguments: filename data file name (comma or space separated). Defaults to stdin. optional arguments: -h, --help show this help message and exit --title TITLE Title of graph --width WIDTH width of graph in characters default:50 --format FORMAT format specifier to use. --suffix SUFFIX string to add as a suffix to all data points. --no-labels Do not print the label column --color [{red,blue,green,magenta,yellow,black,cyan} [{red,blue,green,magenta,yellow,black,cyan} ...]] Graph bar color( s ) --vertical Vertical graph --stacked Stacked bar graph --different-scale Categories have different scales. --calendar Calendar Heatmap chart --start-dt START_DT Start date for Calendar chart --custom-tick CUSTOM_TICK Custom tick mark, emoji approved --delim DELIM Custom delimiter, default , or space --verbose Verbose output, helpful for debugging --version Display version and exit
Termgraph的用法示例
用两列逗号或者空格分隔的数据文件。第一列是标签,第二列是数字数据
$mkdir termgraph-data $cd termgraph-data
创建测试数据文件:
$cat dset1.dat 2016 200.45 2016 110.45 2015 77.89 2014 66.2 2014 760.00 2013 450.56
然后在终端上生成图表:
2016: ▇▇▇▇▇▇▇▇▇ 200.45 2016: ▇▇▇ 110.45 2015: ▏ 77.89 2014: ▏ 66.20 2014: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 760.00 2013: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 450.56
这将从文件dset1.dat中读取数据。
我们还可以使用颜色,如下所示:
$cat test2.dat # Example Data Set with 2 Categories @ Oranges,Pineapples 2016,200.45,70.5 2016,110.45,300.46 2015,77.89,120.45 2014,66.2,345.22 2014,760.00,30.24 2013,450.56,472
然后:
$ termgraph test2.dat --color {red,green}
处理没有类别的堆叠数据:
$cat test3.dat # Example Data Set without Categories' names 2016,200.45,70.5 2016,110.45,300.46 2015,77.89,120.45 2014,66.2,345.22 2014,760.00,30.24 2013,450.56,472
然后运行:
$termgraph test3.dat --color {magenta,green} --stacked --title "Stacked Data"
使用日历热图
这期望第一列是格式为" YYYY-mm-dd"的日期。
$cat cal.dat 2016-01-10 100.34 2016-02-11 50.00 2016-03-12 66.45 2016-04-13 10.11 2016-05-14 0.00 2016-06-15 30 2016-07-16 24.56 2016-01-10 6.55 2016-02-11 6.88 2016-03-12 10.34 2016-04-13 40.45 2016-05-14 66.78 2016-06-15 55.45 2016-07-16 5.67
使用标准输入和表情符号
在stdin上提供表情符号的示例:
echo "Label,5,10,20,15,35,10,45,3,7,28" | termgraph --custom-tick "?" --no-label