我不小心开始使用bash脚本$!代替#!并且得到了一些非常奇怪的行为.我想弄清楚发生了什么.
如果您尝试此脚本:
$!/bin/bash
echo Hello world!
Run Code Online (Sandbox Code Playgroud)
你会得到以下行为:
$ chmod +x hello
$ ./hello
[nothing happens, get prompt back]
$ exit
exit
Hello world!
$
Run Code Online (Sandbox Code Playgroud)
所以看起来这件事发生了:
这是怎么回事?怎么样都发生了?没有#!,shell如何知道bash用于解释脚本?
显然这是"满足我的好奇心",而不是"解决我的问题"问题.谷歌搜索没有产生太大,可能是因为#!和$!在查询不使谷歌博特高兴.
这是关于数据可视化表示的最佳实践以及如何在R/ggplot2中绘制绘图的问题.
我试图找到一种方式以图形方式表示这里讲述的故事:
"我们有2000个测试用例,其中500个有错误.经过调查,我们发现400个测试是Big,1600个是Small;只有25个Big测试有错误,所以我们将它们放在一边,留下1600个小测试,其中有475个有错误.然后我们发现400个小测试是顺时针方向,1200个是逆时针方向;只有20个小顺时针测试有错误,所以我们将它们放在一边,留下1200个小逆时针测试,其中455有错误."
换句话说,我使用类别来分隔我的测试用例,并且我想表示每个类别中的错误部分如何随着我的进度而变化.
这里有一些R数据:
tests <- data.frame(n.all=c(2000,400,1600,400,1200),n.err=c(500,25,475,20,455),sep.1=as.factor(c("all","Big","Small","Small","Small")),sep.2=as.factor(c("all","all","all","Clockwise","Counter-Clockwise")))
Run Code Online (Sandbox Code Playgroud)
使用这么少的数据,一个简单的数字表可能是最好的选择; 让我们假设故事仍在继续,越来越多的分离类别被使用,因此简单地列出数字并不是最佳选择.
什么是表示这些数据的好方法?我可以想到几个可能性:

所有四种方法都显示了测试用例的绝对数量减少,以及分离类别中的错误部分以及剩余的部分.我认为我最喜欢#4,但我有一个开放的心态.
应该如何表示这种数据,并且可以使用R/ggplot2这样做?