【问题标题】:Matlab two different colors in same line in legendMatlab图例中同一行的两种不同颜色
【发布时间】:2013-09-17 10:09:48
【问题描述】:

在Matlab中,下面会在图例中的指定行生成黑色:

leftAxis = sprintf('left y-axis','Color','r');
leg = legend([.. bla bla ..], sprintf('test [%s]', leftAxis), etc... );

我想要实现的是图例中同一行的两种颜色。 (所以在本例中,'test' 部分应为黑色,'left y-axis' 部分应为红色。

我尝试过的:

  • 执行上述操作:没有结果。
  • 从图例中获取字符串参数并更改颜色:为整行着色。
  • 使用 LaTeX 为文本着色:没有结果。

一张图片来形象化我的意思:

【问题讨论】:

  • 您可以添加所需结果的图像吗?
  • @DennisJaheruddin:当然。给我一分钟
  • @DennisJaheruddin 我得到了他想要的东西……在重新阅读文本两次或更多次后,呵呵。他希望文本的一部分是黑色的,而另一个是红色的,如 html:Test <font color='red'>[Name]</font>.Jean,如果我错了,请纠正我……
  • @DennisJaheruddin:Werner 明白我的意思。请查看我更新的问题以进行可视化。

标签: matlab matlab-figure printf legend-properties


【解决方案1】:

可能你打错了 tex 字符串:

figure
hold on
line1H=plot(1:10,1:10);
line2H=plot(1:10,2*(1:10),'r');

leg{1} = 'BlackText {\color{blue}line1} BlackAgain';
leg{2} = 'BlackText {\color{red}line2} BlackAgain';

legend([line1H,line2H],leg{:})

生成:

【讨论】:

  • 我以不同的方式使用了 LaTeX(不知道你可以这么简单地做到这一点),所以这可以解释它。感谢您的帮助:它有效!
【解决方案2】:

我会直言不讳地猜测你犯了一个错误。

在这里我们可以看到latex should work in figure labels

在这里我们可以看到matlab should allow using colors with latex

很遗憾,我现在没有机会尝试它,但我想这是要走的路。如果失败,请显示您使用的代码。

【讨论】:

    猜你喜欢
    • 2013-05-05
    • 2015-02-08
    • 1970-01-01
    • 1970-01-01
    • 2014-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多