Use subscripted assignment to create an array element.

8 views (last 30 days)
irfan Ullah
irfan Ullah on 11 Apr 2019
Edited: VBBV on 3 Apr 2024 at 0:13
I am try to plot data but I am getting an error. I don't know why. Any idea?
Sample Code
hold on
ax = gca;
ax.FontSize = 18;
ax.FontName = 'Times New Roman';
ax.XAxis.Color = 'k';
ax.YAxis(1).Color = 'k';
ax.YAxis(2).Color = 'k';
ax.XAxis.LineWidth = 2.5;
ax.YAxis(1).LineWidth = 2.5;
ax.YAxis(2).LineWidth = 2.5;
ax.XAxis.Limits = [0 1122];
ax.YAxis(1).Limits = [-5 25];
ax.YAxis(2).Limits = [-2 10];
ax.XAxis.TickLength = [0.02 0.035];
ax.YAxis(1).TickLength = [0.02 0.035];
ax.YAxis(2).TickLength = [0.02 0.035];
ax.XAxis.MinorTick = 'on';
ax.YAxis(1).MinorTick = 'on';
ax.YAxis(2).MinorTick= 'on';
ax.XAxis.MinorTickValues = 0:50:1122;
ax.YAxis(1).MinorTickValues = -5:1:25;
ax.YAxis(2).MinorTickValues = -2:1:10;
hold on
ax.XAxis.MajorTickChild.LineWidth = 1.5;
ax.XAxis.MinorTickChild.LineWidth = 1.5;
ax.YAxis(1).MajorTickChild.LineWidth = 1.5;
ax.YAxis(1).MinorTickChild.LineWidth = 1.5;
ax.YAxis(2).MajorTickChild.LineWidth = 1.5;
ax.YAxis(2).MinorTickChild.LineWidth = 1.5;
Error
Property assignment is not allowed when the object is empty. Use subscripted assignment to create an array element.
Error in FanHeaterSensorResponseTimeWithCurrentCurve (line 72)
ax.XAxis.MinorTickChild.LineWidth = 1.5;
  1 Comment
VBBV
VBBV on 3 Apr 2024 at 0:13
Edited: VBBV on 3 Apr 2024 at 0:13
You can use the axes handle inside hold on to continue . Using hold on without axes handle creates a new figure with empty axes data.
hold(ax,'on') % use axes handle
ax.XAxis.MajorTickChild.LineWidth = 1.5;
ax.XAxis.MinorTickChild.LineWidth = 1.5;
ax.YAxis(1).MajorTickChild.LineWidth = 1.5;
ax.YAxis(1).MinorTickChild.LineWidth = 1.5;
ax.YAxis(2).MajorTickChild.LineWidth = 1.5;
ax.YAxis(2).MinorTickChild.LineWidth = 1.5;
or try
ax.XAxis.MajorTickChild.LineWidth = 1.5;
ax.XAxis.MinorTickChild.LineWidth = 1.5;
ax.YAxis(1).MajorTickChild.LineWidth = 1.5;
ax.YAxis(1).MinorTickChild.LineWidth = 1.5;
ax.YAxis(2).MajorTickChild.LineWidth = 1.5;
ax.YAxis(2).MinorTickChild.LineWidth = 1.5;

Sign in to comment.

Answers (0)

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!