2

如何绘制如下图所示的图形?

这里的图例(绿色/蓝色)在每条曲线上绘制了一些值(0.10 到 0.40)。是否有任何可能的解决方案或提示来做到这一点?

图参考:

在此处输入图像描述

4

1 回答 1

2

使用clabel (轮廓标签)可以在线条内绘制数据标签,尽管这需要您使用轮廓命令绘制数据。

虽然如果您不能将其绘制为等高线图,那么您应该能够将您的绘图数据转换为等高线矩阵格式,请参阅等高线算法帮助页面底部的矩阵定义。这是一个定义数据点的简单 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)

这给了我这个情节

使用内联数据值绘制

于 2013-10-11T14:55:55.783 回答