matlab - MATLAB: 交互式工具到"draw"?

  显示原文与译文双语对照的内容

你知道在图形图形中绘制任意样条线或者直线的简单方法? 我得到了以下图形,我在powerpoint中创建了更多或者更少的样条曲线( 蓝色),但是现在我想在最后的打印输出。

i,现在我还想手动绘制一些样数值,或者有一个工具,可以直接插入一些点,如果有一个工具,那么就可以用曲线来创建一些类似的东西。

我可以找到自己的绿色和红色的线条( 也许还需要手动的plot,是)?

提前致谢!


我发现自己在MATLAB中做了一个很好的样条曲线,它是一个不错的样条方式: 使用 splinetool,然后使用示例或者导入一些数据,然后你可以交互地添加和删除点,直到你的样条看起来大致像它。 然后 file-> 打印到图,然后是 tools-> 编辑 plot ! 然后删除你不需要的东西,添加标题,xlabel和 ylabel 等等,然后用 比如 matlab2tikz将它导出到 LaTeX 中,这是非常不错的东西 !

时间: 作者:

根据目的,打印精美的图纸,我有一些推荐。

1 ) 按常规的方式 plot,你得到一个图形句柄和一个轴句柄


h = figure(.. . )
a = gca

2 ) 使用图形窗口的data cursor 函数,并交互式地插入后面的样条曲线的基点。 你可以通过右键单击其他点。


t = linspace(0,2*pi,1000);
[x y] = deal(sin(t),cos(t))

enter image description here

以后,如果只需要保持矢量图形的锚点,就可以在to中删除数据提示的"视觉"部分。

此外,还可能有个自定义数据提示: 中心教程

3 ) 我曾经将一个函数写入了很好的plot 数字图形作为向量图形。 你可以指定高度。宽度以及周围的白色边距。 你只需要传递图形和轴句柄和名称:


function saveFigure( fig_handle, axes_handle, name, height, width, margin)

set(axes_handle,'LooseInset',get(gca,'TightInset'));
set(fig_handle, 'Units','centimeters','PaperUnits','centimeters')

% the last two parameters of 'Position' define the figure size
set(fig_handle,'Position',[-margin -margin width height],...
 'PaperPosition',[0 0 width+margin height+margin],...
 'PaperSize',[width+margin height+margin],...
 'PaperPositionMode','auto',...
 'InvertHardcopy', 'on',...
 'Renderer','painters'... %recommended if there are no alphamaps
 );
saveas(fig_handle,name,'pdf')

end

1 ) 你可以直接使用你可以直接使用的LaTeX - 使用 'emf' ( 增强型图元文件) 而不是 'pdf' 使用。 用 Adobe ( 因为它提供了层) 或者英镑 ( 开放源代码) 打开这个文件。

5 ) 数据提示被识别为图形对象,你可以捕捉它们并在它的上绘制样条曲线。 对于 Illustrator,我建议将样条曲线放在另一个图层以外的图层上。 稍后你可以交换图形并给样条新的锚点。 总而言之,你可以使用分组函数来将所有的内容。

6 ) 我认为你在only-Matlab-solution上节省了很多时间。 外观不错 !

作者:
...