HighCharts画图/请求路径/git使用总结
2015-05-31 21:46
519 查看
1、利用highcharts画柱状图
(1)为了让每个柱上面显示相应的值,在highcharts的option设置如下参数:<span style="white-space:pre"> </span>plotOptions: { series: { pointWidth: 30, pointPadding: 0.2, borderWidth: 0, dataLabels:{//将值显示在柱状图的上面 enabled:true, crop:false, overflow:'none' } } }
crop和overflow是为了让值总是显示在柱状图的上方,防止柱状图太高时,值显示在柱状图中。
(2)在横轴显示categories
因为字符串的长度太长时,字符串可能会旋转,为了保证其换行显示而不是旋转相应的角度,可以设置如下选项:<span style="white-space:pre"> </span>xAxis: { type:'category', categories: [], labels: { autoRotationLimit: 5//图表显示时按单词换行,所以后台传过来的字符串句子中设置适当的间隔 } }
主要是设置autoRotationLimit:5这个参数,同时当一个字符串太长时要在字符串中适当的位置增加空格,如:“第一次 生产 过程” 这样在坐标轴上显示时,当一个刻度的宽度容纳不下该字符串时,便会分成三行显示为:
“第一次”
“生产”
“过程”
(3)为了让不同的柱显示不同的颜色,增加如下选项:主要是设置colorByPoint:true
<span style="white-space:pre"> </span>plotOptions: { series: { colorByPoint:true, pointWidth: 30, pointPadding: 0, borderWidth: 0, dataLabels: { enabled:true, crop:false, overflow:'none' } } }为了设置自己定义的颜色,可以在option中设置一个colors数组。
(4)当要在一个页面中画多个图
不要先定义一个option1,然后将option1的值直接赋值给option2 : option2 = option1, 因为option1为引用类型,这样会造成option1和option2的引用值相同 ,它们的修改会相互影响。2、后台请求路径的问题
(1) 注意要将ajax的请求路径写成相对路径,不要写成绝对路径
例如不要写成:url:'http://localhost:8080/Test/xxx/xxx.json',可以在前台JSP页面中先获取相对路径:<% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %>然后设置一个隐藏的input标签来保存该路径:
<input type="hidden" value="<%=basePath%>" id=basePath>
接着在js文件中拼接成绝对路径:
var url = $("#basePath").val()+"rsd/rsdExtraction.json";
在ajax请求中便可以利用这个路径来向后台发送请求。
(2)关于在src路径下读取相关文件的路径设置问题
例如java类要访问一个json或python文件,可以在src下建立一个package来专门存放这些文件。假设存放这些文件的包名为:com.www.test,那么在src下的某个包中如何访问这些文件呢?可以利用xxx.getClassLoader(),这里的xxx指的是某个具体的类,这样可以将路径定位到src目录下,接着定位到相应的包的文件路径:
InputStream in=Correlation.class.getClassLoader().getResourceAsStream("com/www/test/tt.py");
这样就可以将文件读到流中供访问了。
可以写一个公共类:
public static final String readFile(String path) { <span style="white-space:pre"> </span>BufferedReader reader = null; <span style="white-space:pre"> </span>String returnStr = ""; <span style="white-space:pre"> </span>try { <span style="white-space:pre"> </span>InputStream in=Util.class.getClassLoader().getResourceAsStream(path);//相对工程路径,类加载器会从src开始查找 <span style="white-space:pre"> </span>InputStreamReader inputStreamReader = new InputStreamReader(in, "UTF-8"); <span style="white-space:pre"> </span>reader = new BufferedReader(inputStreamReader); <span style="white-space:pre"> </span>String tempString = null; <span style="white-space:pre"> </span>while ((tempString = reader.readLine()) != null) { <span style="white-space:pre"> </span>returnStr += tempString; <span style="white-space:pre"> </span>} <span style="white-space:pre"> </span>reader.close(); <span style="white-space:pre"> </span>} catch (IOException e) { <span style="white-space:pre"> </span>e.printStackTrace(); <span style="white-space:pre"> </span>} finally { <span style="white-space:pre"> </span>if (reader != null) { <span style="white-space:pre"> </span>try { <span style="white-space:pre"> </span>reader.close(); <span style="white-space:pre"> </span>} catch (IOException e) { <span style="white-space:pre"> </span>e.printStackTrace(); <span style="white-space:pre"> </span>} <span style="white-space:pre"> </span>} <span style="white-space:pre"> </span>} <span style="white-space:pre"> </span>return returnStr; <span style="white-space:pre"> </span>}
3、在加载页面时,不要直接先读后台的json数据,应该等页面加载完成后再去获取json数据,不然会影响页面的加载速度,影响用户体验。
4、git使用
先用git status查看当前的状态。红色的部分即为近期修改的部分。首先为了将远程的修改合并到本地,使用:git pull。修改完相应的冲突部分后 然后再重新运行工程看看有没有问题。
当在本地修改之后,为了将本地的修改合提交到远程的分支,为了不影响远程的内容,可以先新建一个分支
然后在该分支上进行提交,提交完成后切换到主分支,将新建的分支合并到主分支并删除。具体操作步骤如下:
首先,创建dev分支,然后切换到dev分支:
$ git checkout -b dev
git checkout命令加上-b参数表示创建并切换,相当于以下两条命令
$ git branch dev
$ git checkout dev
然后用git branch 命令查看当前分支
$ git branch
* dev
master
git branch 命令会列出所有分支,当前分支前面会标一个 * 号
然后就可以在dev分支上正常提交,比如对readme.txt做个修改
然后提交:
$ git add readme.txt
$ git commit -m "branch test"
现在,dev分支的工作完成,我们就可以切换回master分支:
$ git checkout master
切换回master分支后,再查看一个readme.txt文件,刚才添加的内容不见了,因为那个提交是在dev分支上,
而master分支此刻的提交点并没有变。
现在,我们把dev分支的工作成果合并到master分支上:
$ git merge dev
git merge命令用于合并指定分支到当前分支。合并后,再查看readme.txt的内容,就可以看到和dev分支的更新提交是完全一样的。
注意,上面的Fast-forward信息,这次合并是”快进模式“,也就直接把master指向dev的当前提交,所以合并的速度非常快
合并完成后,就可以放心的删除dev分支了。
接下来就可以 $ git push
上面合并分支时,git 会用Fast-forward模式,但这种模式下,删除分支后,会丢掉分支信息。
如果要强制禁用 Fast forward模式,git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
--no-ff方式下的git merge:
首先,创建并切换分支
$ git checkout -b dev
修改readme.txt,并提交一个新的commit
$ git add readme.txt
$ git commit -m "add merge"
现在切换回master分支
$ git checkout master
准备合并dev分支,注意 --no-ff 参数,表示禁用Fast forward:
$ git merge --no-ff -m "merge with no-ff" dev
因为本次合并要创建一个新的commit ,所以加上 -m 参数,把commit描述写进去。
合并后,用 git log看看分支历史
$ git log --graph --pretty=oneline --abbrev-commit
$ git log --graph --pretty=oneline --abbrev-commit
* 7825a50 merge with no-ff
|\
| * 6224937 add merge
|/
* 59bc1cb conflict fixed
...
相关文章推荐
- MySQL之高效覆盖索引
- 初学spark--scala--45
- IOS实用代码片段 2
- springMVC基础篇
- 用友T6-ERP系统技术解析(一)销售订单(三)
- android自定义adapter和bundle的使用
- jQuery操作css-position()与offset()方法的区别
- Android非常有用的工具
- QT编译时 qmake错误
- 第五次作业
- 调整数组顺序使奇数位于偶数的前面
- java组播MulticastSocket
- 回调参数绑定,将局部变量变成回调的传参
- Jstl标签库代替 struts2 标签
- 一起talk C栗子吧(第六回:C语言实例--生成随机数)
- svn 总结(二)——冲突
- java组播MulticastSocket
- Gitlab7.0通知邮箱的配置(smtp)
- 构建之法——现代软件工程
- linux中md5sum命令的重要作用------顺便聊聊两次与之相关的经历