Matlab 小技巧

Published on 2015 - 03 - 22
  • Matlab中plot标识符的颜色填充

Image

另外我们可以通过下面四个属性设置标识符的颜色和大小

  LineWidth——指定线宽

  MarkerEdgeColor——指定标识符的边缘颜色

  MarkerFaceColor——指定标识符填充颜色

  MarkerSize——指定标识符的大小

  例如下面的例子:

x = -pi: pi/10: pi;
y = tan(sin(x)) - sin(tan(x));
plot(x, y, '--rs', 'LineWidth', 2,...
                'MarkerEdgeColor', 'k', ...
                'MarkerFaceColor', 'g', ...
                'MarkerSize', 10);

结果如下:

Image

  • 解决matlab程序关联

运行平台:Window 7(x86/x64) OS

软件版本:Matlab2013a

注意:要用管理员权限运行软件才行。

自从Matlab2010a(后续版本包括:Matlab2010b、Matlab2011a、Matlab2011b、Matlab2012a、Matlab2012b、Matlab2013a)推出以后,Matlab的软件安装变得不再那么友好,换句话说就是:

  1. 软件安装完成以后既不生成桌面快捷方式也不生成开始菜单栏快捷键。
  2. 更操蛋的地方在于,诸如:*.m,*.mat,*.mdl,*.fig,*.p,*.mlprj,*.mexw32/64等文件均不是与软件默认关联的,软件也不支持单窗口打开方式(同时打开两个*.m文件的话会打开两次软件)。

对于第一个问题,只需到Directory\MATLAB\R2013a\bin\win64(对于32位操作系统,变为:\win32)下找到MATLAB.exe,手动创建桌面快捷方式即可,其中Directory是软件的安装目录。

对于第二个问题,打开Matlab,在Command Window中进行如下操作即可:

cd (matlabroot)

cd toolbox

cd matlab

cd winfun

cd private

help fileassoc.m

fileassoc.m的显示帮助信息如下:

FILEASSOC Set or delete Windows file associations
FILEASSOC('add',FILETYPE) sets the file associations 
for a MATLAB file type. This associates a file type with 
the currently running installation of MATLAB. FILETYPE is a
string for one of these supported types, or a cell array of strings:
for more than one type:
    .m, .mat, .mdl, .fig, .p, .mlprj, .mexw[32][64]

FILEASSOC('delete', FILETYPE) deletes the file associations 
for a MATLAB file type, even if the file type is not associated 
with MATLAB.

You must have permission to write to the HKEY_CLASSES_ROOT 
registry key. This typically requires Power User, or Administrator 
privileges.

Example:
    fileassoc('add', '.m')
    fileassoc('add', {'.m','.mat','.mdl','.fig','.p','.mlprj','.mexw32'})

Copyright 2007 The MathWorks, Inc. 
$Revision: 1.1.6.2 $ $Date: 2007/05/02 18:15:55 $

注意这一句代码:fileassoc('add', {'.m','.mat','.mdl','.fig','.p','.mlprj','.mexw32'})。 

运行一下它,如果是32位操作系统,运行:

fileassoc('add', {'.m','.mat','.mdl','.fig','.p','.mlprj','.mexw32'})。

如果是64为操作系统,运行:

fileassoc('add', {'.m','.mat','.mdl','.fig','.p','.mlprj','.mexw64'})。

  • Matlab的Figure窗口设置全屏方法

简介

figure窗口显示一直是MATLAB极为突出的用途之一,它将用户从繁杂的图形显示操作中解放出来。封装了很多优秀显示函数,这里从figure窗口的属性出发,简单介绍全屏显示方法。

实例

% http://blog.csdn.net/lyqmath

clear all; 
clc; 
close all;
x1 = -5:0.1:5;
x2 = -5:0.1:5;
[X1, X2] = meshgrid(x1,x2);
fxy = X1.*sin(pi.*X1)+X2.*sin(pi*X2);
% 正规化数据的方式
hfig1 = figure;
surf(X1, X2, fxy);
box on;
pause(1)
set(hfig1, 'unit', 'normalized', 'position', [0,0,1,1]);
% 获取屏幕尺寸的方式
hfig2 = figure;
surf(X1, X2, fxy);
box on;
pause(1)
set(hfig2, 'position', get(0,'ScreenSize'));

总结

这里涉及到了MATLAB句柄的使用,以及"0”作为根句柄的规则。

Comments
Write a Comment