如何在绘图后连接散点图的点,并从虚线图中划线?
答案 0 :(得分:5)
我猜你从x
和y
坐标生成了一个散点图,
plot(x,y,'.');
加入
plot(x,y,'.');
hold on;
plot(x,y,'-');
或在一个命令中
plot(x,y,'.-');
这是你想要的吗?
答案 1 :(得分:3)
如果您将现有的绘图作为散点图,则不能简单地加入点而不知道哪些点与哪些点连接。
如果你知道点的顺序/连通性,那么你可以简单地使用绘图功能来做到这一点。电话
plot(x,y,'-')
将点与直线段连接。如果您希望在沿线的每个点使用标记符号,则可以添加绘图允许的其中一个标记,如下所示:
plot(x,y,'o-')
您可以从
获取允许的标记列表help plot
如果您在一组点上使用了散射,现在希望覆盖连接点的线,则使用hold函数强制matlab在散点图上绘制。例如,
scatter(x,y)
hold on
plot(x,y,'-')
hold off
同样,任何这些变化都需要您了解点之间的连接。有些方案有时可以从孤立点列表中恢复连接。其中一种方法称为CRUST,通常用于三维表面重建。我通过简单搜索“crust algorithm”找到了许多参考文献。
答案 2 :(得分:1)
如果你有一个散点图(用我怀疑的散射函数制作)并且出于某种原因不想用绘图重绘它,这里就是你可以做的连接点:
h = findobj(gca,'type','hggroup');
hold on
for k=1:numel(h)
x = get(h(k),'xdata');
y = get(h(k),'ydata');
plot(x,y,'-')
end
hold off
点将按原始顺序连接。如果需要,可以在绘图之前对数据进行排序,例如通过x:
[x,ind] = sort(x);
y = y(ind);
答案 3 :(得分:1)
要回答如何在Maple中执行此操作的问题,您只需使用PointPlot包中的Statistics命令,并将=IIf(Globals!RenderFormat.IsInteractive=false, Fields!Link.Value, "javascript:void(window.open('" & Fields!Link.Value & "','_blank'))")
选项设置为style
或line
。例如:
pointline
指定选项Statistics:-PointPlot([2, 4, 6, 4], xcoords=[1, 2, 3, 4], style=pointline);
= style
会显示点和连接线; pointline
= style
只显示该行。