Binary Heat Map Generatior
binheat的Python项目详细描述
binheat将二进制关系的描述转换为 作为二元热图的关系(即矩阵显示,邻接矩阵, 比较表,可能还有其他一些名称;请参见下面的 示例)。
每一行输入(除了空行和注释,它们被忽略) 必须是x<TAB>y形式,表示二进制中的一对(x, y)。 关系。如果给定了--multiline选项,则可以改为输入行 包含多个制表符分隔的字段;x<TAB>a<TAB>b<TAB>c则为短 对于x<TAB>a、x<TAB>b和x<TAB>c。
在输出表中,每个输入行的第一列中的值变成 表行的标签和第二个输入列的值 向前成为表列的标签。这可以用 --transpose选项。
安装
binheat需要python 3.4或更高版本。只需对python 3使用pip(您有pip,对吧?)安装 binheat及其依赖项:
python3 -m pip install binheat
用法
binheat [<OPTIONS>] [<infile> [<outfile>]]
从<infile>读取输入(如果未指定文件,则为标准输入)。 生成的pdf将写入<outfile>(如果没有,则为标准输出 文件已指定)。
选项
- -C <file>,--column-labels <file>-使用^{tt16}中的行$ (丢弃空行和注释后)按它们显示为列的顺序 标签(如果--transpose有效,则为行标签)。中的任何一对 其第二列未出现在<file>中的输入将被丢弃。
- -F<ttf-file>,--font<ttf-file>-使用给定的.ttf文件 文本字体。默认情况下,所有文本都是用泰晤士罗马字体排版的。
- -f <size>,--font-size <size>-将文本大小设置为<size> (默认值12)。
- ^{TT25}$,^{TT4}$-^{TT27}$(或任意数量的 制表符分隔字段)将允许作为^{tt28}的缩写。$ 后跟foo<TAB>baz等。
- -R <file>,--row-labels <file>-使用<file>(之后)中的行 按空行显示为行标签的顺序丢弃空行和注释(或 如果--transpose有效,则为列标签)。输入中的任何对 第一列不出现在<file>中被丢弃。
- -S,--no-sort-输出中的标签将按 它们出现在输入文件中而不是在词序 中
- -T,--transpose-输出将被转置-即,第一个 输入的列将用于输出表的列标签,并且 接下来的第二个输入列将用于表的行标签。
示例
以下输入文件:
NUL (\0, 0x00)<TAB>iscntrl 0x01..0x06<TAB>iscntrl BEL (\a, 0x07)<TAB>iscntrl BS (\b, 0x08)<TAB>iscntrl TAB (\t, 0x09)<TAB>iscntrl<TAB>isspace<TAB>isblank LF (\n, 0x0A)<TAB>iscntrl<TAB>isspace VT (\v, 0x0B)<TAB>iscntrl<TAB>isspace FF (\f, 0x0C)<TAB>iscntrl<TAB>isspace CR (\r, 0x0D)<TAB>iscntrl<TAB>isspace 0x0E..0x1F<TAB>iscntrl SPACE (0x20)<TAB>isprint<TAB>isspace<TAB>isblank !"#$%&'()*+,-./<TAB>isprint<TAB>isgraph<TAB>ispunct 0123456789<TAB>isprint<TAB>isgraph<TAB>isalnum<TAB>isdigit<TAB>isxdigit :;<=>?@<TAB>isprint<TAB>isgraph<TAB>ispunct ABCDEF<TAB>isprint<TAB>isgraph<TAB>isalnum<TAB>isalpha<TAB>isupper<TAB>isxdigit GHIJKLMNOPQRSTUVWXYZ<TAB>isprint<TAB>isgraph<TAB>isalnum<TAB>isalpha<TAB>isupper [\]^_`<TAB>isprint<TAB>isgraph<TAB>ispunct abcdef<TAB>isprint<TAB>isgraph<TAB>isalnum<TAB>isalpha<TAB>islower<TAB>isxdigit ghijklmnopqrstuvwxyz<TAB>isprint<TAB>isgraph<TAB>isalnum<TAB>isalpha<TAB>islower {|}~<TAB>isprint<TAB>isgraph<TAB>ispunct DEL (0x7F)<TAB>iscntrl
生成(使用--multiline和--no-sort选项)输出文件 看起来是这样: