Adding DataTipRows - I can't set VALUE of new DataTipRows

9 次查看(过去 30 天)
p = trisurf(triangles,Points(:,1), Points(:,2), Points(:,3))
Now, I would like to add new DataTipRows:
>> Labels = repmat({'LL'},size(p.XData,1),size(p.XData,2)); % Creates cell array in same size with Xdata
row = dataTipTextRow('L',Labels,'auto');
p.DataTipTemplate.DataTipRows(end+1) = row;
Error using matlab.graphics.datatip.DataTipTemplate/set.DataTipRows
Value must be compatible with the data source.
>> size(triangles)
ans = 1527252 3
  1 个评论
Vamsi Krishna Bandaru
I am not sure if this qualifies as an answer, therefore i am leaving it as a comment
I got a similar error a while back and the issue was that the data type of my 'value' was single and that was not supported. when i changed it to double it worked. In your case, it might be something similar. try using a string instead of a charachter vector.

请先登录,再进行评论。

回答(1 个)

Walter Roberson
Walter Roberson 2023-3-29
The 'value' (second parameter) to dataTipTextRow must be character vector | string scalar | vector | function handle .
You cannot use the parameter to give a literal value per row. You can however specify
@(x) repmat({'LL'}, size(x))

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by