1, csvwrite / dlmwrite
csvwrite('data.csv', refgeom); % to a csv file
dlmwrite('my_data.out',A, ';') % with seperator = ';'
2, fwrite
fid = fopen('data.bin', 'w');
fwrite(fid, refgeom);
fclose(fid);
2014年5月24日星期六
random number test
1, if the File system is NTFS, /assess maybe not executable. So copy all the file to ubuntu File system.
make it.
2, segment error.
下载解压包SP800-20 sts-2.1 ,重新安装。
3, how to use
./assess 100000
make it.
2, segment error.
下载解压包SP800-20 sts-2.1 ,重新安装。
3, how to use
./assess 100000
2014年5月22日星期四
Histograms of two sets of data with different color in matlab
Ref: http://chi3x10.wordpress.com/2008/03/10/histograms-of-two-set-of-data-with-different-color-in-matlab/
1
2
3
4
5
6
7
8
9
10
11
| figure; hist(data1); hold on; % //make data1 red % //get the handle of the bars in a histogram h = findobj(gca, 'Type' , 'patch' ); % //color of the bar is red and the color of the border % // of the bar is white! set(h, 'FaceColor' , 'r' , 'EdgeColor' , 'w' ); % //data 2 use default color! hist(data2); |
As suggested by Adam in the comments, there is a better way to achieve that. Thanks Adam!!
_______________________________
The variable h contains handles to each of the histograms. Just use “set” on each element individually.
e.g.:
1
2
3
4
5
6
7
8
9
10
11
| hist(data1); hold on; hist(data2); hist(data3); h = findobj(gca,’Type’,’patch’); display(h) set(h(1),’FaceColor’,’r’,’EdgeColor’,’k’); set(h(2),’FaceColor’,’g’,’EdgeColor’,’k’); set(h(2),’FaceColor’,’b’,’EdgeColor’,’k’); |
2014年5月19日星期一
colormap
Ref: http://blog.sina.com.cn/s/blog_618af1950100eyp4.html
matlab中,每个figure都有(而且仅有)一个colormap,翻译过来就是色图。
COLORMAP(MAP) 用MAP矩阵映射当前图形的色图。
COLORMAP('default') 默认的设置是 JET.
MAP = COLORMAP 获得当前色图矩阵.
COLORMAP(AX,...) 应用色图到AX坐标对应的图形,而非当前图形。
MAP实际上是一个mx3的矩阵,每一行的3个值都为0-1之间数,分别代表颜色组成的rgb值,
[1 0 0] 代表红色,[0 1 0]代表绿色,[0 0 1]代表蓝色。系统自带了一些colormap,如:winter、autumn等。输入winter,就可以看到它是一个64x3的矩阵。用户可以自定义自己的colormap,而且不一定是64维的。
[0 0 0] is black, [1 1 1] is white,
[1 0 0] is pure red, [.5 .5 .5] is gray, and
[127/255 1 212/255] is aquamarine.
那么颜色在fill或patch,SURFACE等函数中到底是如何显示的呢?本质上,是把具体的颜色变成colormap中的相应index,也就是行数。这个过程叫做换算映射:将指定的数值颜色向量(矩阵)C,映射到对应的颜色。颜色矩阵C的数值范围为[Cmin, Cmax], Cmin 和Cmax的数值或者为
min(min(C)) max(max(C)),也可以在CAXIS中设置。
在matlab中,图形窗的属性'CdataMapping‘缺省设置值为'scaled',也就是线性的映射。
Cmin对应的值映射到colormap的第一行,Cmax对应的值映射到colormap的最后一行。
映射过程如下:
首先,需要根据caxis取得Cmin和Cmax两个变量(默认值为0和1),画图时如果指定了数值颜色向量(矩阵)C,Cmin和Cmax自动设置为C中的最大值和最小值。当你想控制时,可以自定义。比如将Cmax减小,这样将把所有大于Cmax的C值,全部都映射到同一个颜色(colormap 中index最大的行代表的颜色)。
根据Cij在Cmin和Cmax之间的比例关系,确定对应的颜色的index,默认为线性映射。
也就是说,当制定了数值颜色向量(矩阵)C之后画图,图中颜色的使用范围会自动占满整个颜色范围!
实例:
clc;
clear all;
x=[0 1 1 0];
y=[0 0 1 1]; %定义四个点 [0 0] [1 0] [1 1] [0 1]
H_F=fill(x,y,[0 0.1 0.2 0.6]); %定义四个点的C值
row_cmap = 15; %定义色图矩阵的行数
color_map1=zeros(row_cmap,3); %定义色图矩阵
color_r = 0:1/(row_cmap-1):1;
color_g = 0:1/(row_cmap-1):1;
color_b = 0:1/(row_cmap-1):1;
color_map1(:,1) = color_r;
color_map1(:,2) = color_g;
colormap(color_map1);
colorbar;
%本例中颜色从[0 0 0] 变化到[1 1 0]
%增加row_cmap的值,如变化到100,则可看到颜色的渐变,而非跳跃型变化。
matlab中,每个figure都有(而且仅有)一个colormap,翻译过来就是色图。
COLORMAP(MAP) 用MAP矩阵映射当前图形的色图。
[1 0 0] 代表红色,[0 1 0]代表绿色,[0 0 1]代表蓝色。系统自带了一些colormap,如:winter、autumn等。输入winter,就可以看到它是一个64x3的矩阵。用户可以自定义自己的colormap,而且不一定是64维的。
[0 0 0] is black, [1 1 1] is white,
[1 0 0] is pure red, [.5 .5 .5] is gray, and
[127/255 1 212/255] is aquamarine.
在matlab中,图形窗的属性'CdataMapping‘缺省设置值为'scaled',也就是线性的映射。
Cmin对应的值映射到colormap的第一行,Cmax对应的值映射到colormap的最后一行。
映射过程如下:
首先,需要根据caxis取得Cmin和Cmax两个变量(默认值为0和1),画图时如果指定了数值颜色向量(矩阵)C,Cmin和Cmax自动设置为C中的最大值和最小值。当你想控制时,可以自定义。比如将Cmax减小,这样将把所有大于Cmax的C值,全部都映射到同一个颜色(colormap 中index最大的行代表的颜色)。
根据Cij在Cmin和Cmax之间的比例关系,确定对应的颜色的index,默认为线性映射。
也就是说,当制定了数值颜色向量(矩阵)C之后画图,图中颜色的使用范围会自动占满整个颜色范围!
实例:
clc;
clear all;
x=[0 1 1 0];
y=[0 0 1 1];
H_F=fill(x,y,[0 0.1 0.2 0.6]);
row_cmap = 15;
color_map1=zeros(row_cmap,3);
color_r = 0:1/(row_cmap-1):1;
color_g = 0:1/(row_cmap-1):1;
color_b = 0:1/(row_cmap-1):1;
color_map1(:,1) = color_r;
color_map1(:,2) = color_g;
colormap(color_map1);
colorbar;
%本例中颜色从[0 0 0] 变化到[1 1 0]
%增加row_cmap的值,如变化到100,则可看到颜色的渐变,而非跳跃型变化。
订阅:
博文 (Atom)