Gnuplot 笔记

Bash Linux Windows X11 sed 异常 运算符 LaTeX

gnuplot是一个免费的命令行的绘图软件,在Linux,Windows,OSX等平台都有支持, 虽然叫做gnuplot但它并未使用GPL协议,而是使用自己的开源协议发布(感谢goodgoodlivetodown网友勘误)。 小编曾用它绘制了毕业论文中数百张复杂的脉冲星检测分析图。现在总结一下它的使用方法备忘。

Gnuplot is a portable command-line driven graphing utility for Linux, OS/2, MS Windows, OSX, VMS, and many other platforms. The source code is copyrighted but freely distributed (i.e., you don’t have to pay for it). It was originally created to allow scientists and students to visualize mathematical functions and data interactively, but has grown to support many non-interactive uses such as web scripting. It is also used as a plotting engine by third-party applications like Octave. Gnuplot has been supported and under active development since 1986. –Gnuplot

安装

gnuplotgnuplot-x11(可输出至X11)

帮助

$ gnuplot
gnuplot> help some_command

示例

# 文件
set term postscript eps enhanced size 3.7,5 #enhanced 使用增强文本,size 图的大小(英寸),terminal默认为wxt(X11)
set output "psr.eps"                        # 输出文件名

# 坐标轴
set xlabel "Period (s)"                     # x轴label
set logscale x                              # 设x轴为对数坐标
set xtics 1e-9,-1000,1e-24                  # x轴标度范围
# set xtics (2,4,6,8,10)
set xr [0.001:20]                           # x轴范围
set ydata time                              # 设y轴数据为时间
set timefmt "%H:%M:%S"                      # 设置时间格式
set format y "%g{/Symbol \260}"             # y轴标度格式

# 标注
set key 0.01,100                            # legend位置
# unset key                                 # 取消legend
set arrow from 0.1,2 to 0.2,3               # 箭头
set label "peak" at 0.01,10 rotate by 10    # 标签

# 变量
a=3*2**3  

# 数据文件作图
plot "a.dat" using 1:2 title 'relation' with points pointtype 6 linetype rgb "red" pointsize 1,\ 
# 函数做图
plot x**2    using 1:2 title 'xxxxxxxx' with line linetype 5    

MySQL 学习笔记

Bash Django MySQL SQL 数据库

在使用Django时学习过一些MySQL,暂作小记在此。小编的Django笔记在这里: Django 搭建过程记录

MySQL官方文档在这里:

http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html

database

查看所有

show databases;

进入

use db_name;

删除

drop database db_name;

table

查看所有

show tables;

查看结构

desc tb_name

修改表名

alter table tb_name rename to bbb;

添加字段

alter table tb_name add column col_name varchar(30);
# 添加主键
alter table tb_name add col_name int(5) unsigned default 0 not null auto_increment ,add primary key (tb_name);

删除字段

alter table tb_name drop column col_name;

修改字段名

alter table tb_name change col_name new_col_name int;

修改字段属性

alter table tb_name modify col_name varchar(22);

TEX 学习笔记

Bash LaTeX Linux Makefile Markdown UTF-8 Vim Windows 字体 编译 快捷键

小编本科在物理学院用过不少laTex,而今全面转向Web的同时排版工具也全面转向Markdown了。将laTex的使用心得以及大小坑记录在此以备后用。

编译器

Windows

  • 安装CTEX,可很好地支持各种编译器并获得良好的中文支持。

Linux

安装 texlive。

arch: texlive-core texlive-bin texlive-langcjk texlive-latexextra
ubuntu: texlive texlive-xetex texlive-lang-cjk

Startup

安装好TEX编译器后已经使用gbsn,gkai等字体,但这些字体库不全。可以编译简单的中文:

\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{gkai}
我是楷体
\end{CJK}
\begin{CJK}{UTF8}{gbsn}
我是宋体
\end{CJK}
\end{document}

使用 xelatex 编译,可以方便地编译中文。首先,在导言区添加:

\usepackage[cm-default]{fontspec}

然后在文档中添加:

\setmainfont[Mapping=tex-text]{WenQuanYi Micro Hei}
%for beamer:
\setsansfont[Mapping=tex-text]{WenQuanYi Micro Hei}

为了能够在Linux中使用 windows 字体,首先拷贝字体到用户的字体库:

cp -r $win_dir/Windows/Fonts ~/.fonts/winfonts

然后更改 xelatex 字体映射:

  1. 打开/usr/share/texlive/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def
  2. 将这里指定等win字体更改为系统中存在的字体(使用 fc-list查看),如SimSun, KaiTI等

《计算机网络》笔记 - 网络安全

AES BB84 DES DNS PEM RSA 网络 密码

密码学简介

  • 加密:明文经密钥为参数的函数变换,输出密文
  • 密码编码学、密码分析学、密码术
  • Kerckhoff原则:所有算法必须是公开的,只有密钥是保密的
  • 含糊的安全性(security by obscurity):使算法保持秘密
  • 工作因子:密码分析者面对的密钥的复杂性,对于穷举搜索,为密钥长度的指数量级
  • 密码分析问题
  • 只有密文
  • 已知明文(有了一些相匹配的密文和明文)
  • 选择明文(能够加密一些自己选择的明文)

《计算机网络》笔记 - 应用层

DNS Web POP3 RAID SMTP UDP XML 网络 IMAP

DNS-域名系统

  • DNS(Domain name system):RFC 1034、1035,调用解析器(resolver)将名字映射成IP地址

DNS名字空间

  • DNS名字空间:internet被分为200多个顶级域,每个域被分为若干子域,子域又被进一步划分,以此类推。
  • 顶级域有两种:通用域和国家域
  • 通用域包括com(商业的)、edu(教育性机构)、int(国际性组织)、mil(美国军队)、net(网络供应商)、org(非营利性组织)、biz(商贸)、info(信息)、name(人们的名字)、pro(职业)、aero(航空业)、coop(合作社)、museum(博物馆)
  • 国家域定义在ISO 3166中。

资源记录

  • 每个域都有一组与它相关联的资源记录;当解析器把域名传递给DNS时,DNS所返回的是与该域名相关联的资源记录。
  • 每条资源记录是一个5元组:Domain_name(域名)、Time_to_live(生存期)、class(类别)、type(类型)、value(值)

名字服务器

  • 权威记录:来自于管理该记录的权威机构,因此总是正确的
  • 递归查询:当解析器接收到一个域名查询时,它将该查询传递给本地的一个名字服务器,如果被查询域名落在该名字服务器的管辖范围内,那么返回权威的资源记录;如果本地没有关于它的信息,那么本地名字服务器向顶级名字服务器发送一条查询此域的消息。
  • LDAP(lightweight directory access protocol,轻量级目录访问协议):RFC 2251,定位到一般的对象,如人员、资源、服务等。

《计算机网络》笔记 - 网络层

DHCP Dijkstra IP LAN TCP UDP WAN 网络 路由 拥塞控制 服务质量

网络层的设计要点:

  • 存储-转发分组交换
  • 向传输层提供服务:独立于路由器技术、路由器数量类型拓扑关系对传输层不可见、跨越多个LAN和WAN进行统一编址
  • 无连接服务的实现:数据报、数据报子网
  • 面向连接服务的实现:虚电路(VC,virtual circuit)、虚电路子网;要求建立电路、路由器建立表项、分组只含VC号而不需目标和源地址、路由失效将终止、容易实现服务质量和拥塞控制

上一页 下一页