如何绘制如下图所示的图形?
此处图例(绿色/蓝色)在每条曲线上绘制一些值(0.10到0.40)。有没有可能的解决方案或提示呢?
图参考:
答案 0 :(得分:2)
使用clabel(轮廓标签)可以在行内绘制数据标签,但这需要您使用contour命令绘制数据。
虽然如果不能将其绘制为等高线图,那么您应该能够将绘图数据转换为轮廓矩阵格式,请参阅the contour algorithm上帮助页面底部的矩阵定义。这是一个定义数据点的简单2行向量,您应该能够将此矩阵提供给clabel函数以内联打印数据标签。
对于下面的示例 - 我使用plot命令绘制了3行,保存了数组h中的行句柄。然后我从绘制的数据中创建了轮廓矩阵,例如,如果红线有50个数据点,那么
C(1,1)=0.44; % data value to plot on the line
C(2,1)=50; % number of data points
C(1,2:51)=line1x; % x data points for the red line
C(2,2:51)=line1y; % y data points for the red line
我手动测试了这个想法,但我确信如果需要,我可以编写一个简单的函数来自动创建这个矩阵。无论如何,重复将其他行数据添加到轮廓矩阵,然后使用轮廓标签命令
clabel(C,h)
这给了我这个情节