我有一组包含> 7组数据。
默认颜色全部使用一次后(即使用前7组数据)我想要更改标记样式,并且每次为每个标记使用所有7种颜色时重复此标记。
我已成功使用以下方式更改了线条样式:
set(0, 'DefaultAxesLinestyleOrder', '-|--|-.');
然而将此更改为:
set(0, 'DefaultAxesMarkerOrder', '.|+|^|s');
返回错误:
Error using set
Invalid property found.
Object Name: axes
Property Name: 'MarkerOrder'.
我不确定为什么替换'Marker'
不起作用。可能因为默认情况下没有标记?虽然我尝试添加:
plot(nbead,x,'.')
问题没有解决。
有人知道如何解决这个问题吗?
答案 0 :(得分:1)
MATLAB没有默认的标记顺序。相反,您可以在线条样式规范中指定标记顺序,如下所示:
set(0, 'DefaultAxesLinestyleOrder', '-o|--^|-.');
MATLAB使用的循环也被锁定为颜色顺序,因此要查看其他符号,您可能会将颜色顺序更改为更短:
set(0,'DefaultAxesColorOrder',[1 0 0; 0 1 0]);
然后您可以运行以下代码来显示事情的变化:
set(0,'DefaultAxesColorOrder',[1 0 0; 0 1 0]);
set(0, 'DefaultAxesLinestyleOrder', '-o|--^|-.');
n = 15;
data = (diag(1:n) * ones(n))';
figure;
hold all
plot(data)
对于以下输出:
您可以参考Matlab axes documentation获取有关轴属性的更多信息。