如何在Matlab中使用字符串作为绘图数据?

14

我想在 X 轴上使用像 "A"、"B" 和 "C" 这样的词来展示它们对应的属性在 Y 轴上。我如何在 X 轴上书写这些字符串而不是数值数据?

4个回答

25

使用坐标轴句柄的'XTick''XTickLabel'属性。
这里是一个简单的例子:

x = 1:5;
y = rand(size(x));
plot(x, y, 'b')
set(gca, 'XTick',1:5, 'XTickLabel',{'A' 'B' 'C' 'D' 'E'})

alt text


很好的回答。你有没有什么指针可以让单元格项目被LaTeX解释器解释?这样就可以正确地呈现符号:set(gca, 'XTick',1:5, 'XTickLabel',{'A' 'B' '- \sigma' '\sigma' 'E'}) - David_G
1
@David_G:http://blogs.mathworks.com/pick/2007/09/24/tex-interpreter-in-x-tick-and-y-tick-labels/(您可以在文件交换中找到其他类似的提交)。这个想法是用实际的“文本”对象替换刻度标签,位于正确的位置。 - Amro

10

在单元格中设置您的字母(我的称为“标签”),然后使用XTick属性在x轴上设置与标签数量相同的刻度。最后,使用XTickLabel属性将标签写入x轴。

x = yourXdata;
y = yourYdata;
labels = {'A' 'B' 'C'};
plot(x, y);
set(gca, 'XTick', 1:3, 'XTickLabel', labels);

1
如何在X轴上使用字符值而不是数值? 要将x标记为T1 T2 T3 T4,只需使用以下命令: set(gca,'XTick',1:4,'XTickLabel',{'T1', 'T2', 'T3', 'T4'},'FontSize',15)
此命令可在绘图命令后跟随xlabel、ylabel和legend命令使用。您还可以调整字体大小。
实用示例:
    %% 50% Day 
    T1wSI=[54.17 115];
    T2wSI=[53.5 112];
    T3wSI=[52.2 110];
    T4wSI=[51.2 108];

    T1oSI=[50.25 94];
    T2oSI=[49.18 92];
    T3oSI=[48.2 90];
    T4oSI=[46.1 84];

    table1=[T1wSI;T2wSI;T3wSI;T4wSI;T1oSI;T2oSI;T3oSI;T4oSI ];
    season2012=table1(:,1);
    season2013=table1(:,2);
    Tr1=[1 2 3 4];

Treatment1 =['T1wSI' 'T2wSI' 'T3wSI' 'T4wSI' 'T1oSI' 'T2oSI' 'T3oSI' 'T4oSI'];
    %Tre1=['T1' 'T2' 'T3' 'T4'];
    %set(gca,'FontSize',14)
    figure(1)
    set(gca,'XTick',1:4,'XTickLabel',{'T1', 'T2', 'T3', 'T4'},'FontSize',14)
    plot(Tr1,table1(1:4,1),'--bs','LineWidth',3);% 2012
    hold on;
    plot(Tr1,table1(1:4,2),'-go','LineWidth',3);% 2013
    plot(Tr1,table1(5:8,1),'--r*','LineWidth',3); % 2012
    plot(Tr1,table1(5:8,2),'-m^','LineWidth',3);% 2013
    set(gca,'XTick',1:4,'XTickLabel',{'T1', 'T2', 'T3', 'T4'},'FontSize',15)
    xlim=[1 5];
    xlabel('Treatments')
    ylabel('Days to 50 % Flowering')
    legend('With -Season 2012','Without -Season 2013','With -Season 2012','Without - Season 2013','Location','NorthEast');

0

您也可以使用GUI完成此操作。

1)单击图形坐标轴以打开Axes Property Editor。

2)单击窗口右侧的“更多属性”按钮。这将打开坐标轴的检查器窗口。

3)单击“XTickLabel”属性旁边的小按钮,以打开如下所示的对话框。 enter image description here

4)输入您想要的标签,然后单击“确定”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接