如何在八度音程中制作虚线/点线/点划线?

时间:2013-01-08 16:46:26

标签: plot octave

我想使用plot命令以八度音程创建单色图表/图表。 这就是为什么我想使用线条样式制作不同的图形线,例如虚线/点线/点划线样式。 标准plot为行提供了几种样式,但它们都不像列出的变体。


修改-1: 标准打印样式不适用于我的情况:":""-.""--"这样的样式不起作用,八度音程在任何情况下都会绘制实线。此外,钻石和正方形(ds选项)是丑陋和不成比例的大。可能是有用的信息:我在Windows下使用Octave。


EDIT-2:例如,这样的命令plot(A(:,1),A(:,2),"-.dk")给了我这样的(不适用!!! )数字

enter image description here


更具体地说,我想要这样的东西(部分线条样式) xxx

(图片来自文章:McCallum和K. Nigam.1998。Naive Bayes文本分类事件模型的比较。在AAAI-98文本分类学习研讨会论文集中)

3 个答案:

答案 0 :(得分:6)

可以使用FMT的{​​{1}}参数进行设置。基本上,这些似乎是您的选择(参见manual entrey on line styles):

  • plot实线
  • "-"
  • ":"破折号后跟点
  • "-."虚线
  • "--"没有行(仅标记)

还有选项"none"用于点,但这是针对实际数据点,而不是行。因此,要重新创建您的图片,以下内容应该可以正常工作

"."

语法可能看起来有点奇怪但是这里是如何阅读它。对于plot (multinominal, "-dk", "MarkerFaceColor", "k") hold on; plot (mv-bernoulli, ":sk", "MarkerFaceColor", "k") -dk用于实线,-用于菱形标记,d用于黑色(k用于蓝色)。在b上,它是黑色的虚线和方形标记。

请参阅advanced plotting手册部分。

编辑:请参阅以下评论。这可能不适用于Octave的旧版本。

答案 1 :(得分:1)

好吧,我找到了简单的决定自我(使用Google;)) 为了在Octave中获得具有不同样式线条的单色图表/图表,我们不需要使用plot"--"之类的"-."样式(因为它们不起作用)。

我们需要的一件事就是命令print。可以创建单色图形,例如eps格式:

print -deps "diagram.eps"

这给了我很好的照片:

enter image description here

答案 2 :(得分:0)

我遇到了同样的问题,我认为使线型可见的解决方案是更改线宽。使用默认线宽值(为1)时,许多线型无法区分。

尝试以下代码,看看是否有效:

x = ( 0:0.4:10 );
f = sin(x) .* exp(-4 .* x);
g = sin(x);
plot(x,f,'r:','linewidth',5,x,g,'-.','linewidth',2)
print(gcf,"PlotSimple.pdf")