Azzera filtri
Azzera filtri

Can hgtransform be Used with a Constant Line Object?

3 visualizzazioni (ultimi 30 giorni)
This code runs fine on my machine with 2022a. Generates an error here with 2024a. Didn't see anything in the release notes to suggest that setting the parent of a Constant Line to a Transform should no longer work.
rng(100)
figure;scatter(randn(100,1),randn(100,1))
theta = 30;
h = xline(0);
t = hgtransform('Parent',gca);
set(h,'Parent',t);
Error using matlab.graphics.chart.decoration.ConstantLine/setParentImpl
Parent must be a Cartesian axes.
set(t,'Matrix',makehgtform('zrotate',-theta*pi/180));
axis([-10 10 -10 10])

Risposta accettata

Paras Gupta
Paras Gupta il 1 Mag 2024
Hey Paul,
The parent of the 'ConstantLine' should be an 'axes' object, as specified in the the following documentation under 'Parent/Child' property for MATLAB R2024a.
Since the following code snippet returns false, the error in the question seems to be expected as the 'hgtransform' object is not a Cartesian Axes object.
t = hgtransform('Parent',gca);
isa(t, 'matlab.graphics.axis.Axes')
ans = logical
0
The error also seems to occur in MATLAB R2023a and R2023b. The below documentation of 'ConstantLine' for MATLAB R2022a also suggests that its parent should be an 'axes' object, so the error occuring in later releases might be the result of a bug fix.

Più risposte (0)

Categorie

Scopri di più su Object Containers in Help Center e File Exchange

Prodotti


Release

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by