How to translate figure so that point1 [0 -1]' is located at the origin?

1 view (last 30 days)
I began by plotting the original figure with the following code:
% Define coordinates of original graph
point1 = [0 -1]';
point2 = [1 1]';
point3 = [3 2]';
point4 = [3 0]';
point5 = [2 -1]';
point6 = [0 -1]';
points = [point1 point2 point3 point4 point5 point6];
plot_points = @(list_of_points) plot(list_of_points(1,:), list_of_points(2,:), '-o');
% Plot characteristics
plot(points(1,:), points(2,:), 'b')
axis([-1 3.5 -1 2]) % axis min and max
grid on
xlabel('x-axis')
ylabel('y-axis')
title('2D Cad Figure')
What can be done to translate figure so that point1 is located at the origin?

Accepted Answer

Star Strider
Star Strider on 16 Jan 2019
I am not certain what result you want.
One option is to add this line after the plot call:
axis(reshape([point1, point3]', 1, 4))
In context:
% Plot characteristics
plot(points(1,:), points(2,:), 'b')
axis([-1 3.5 -1 2]) % axis min and max
grid on
xlabel('x-axis')
ylabel('y-axis')
title('2D Cad Figure')
axis(reshape([point1, point3]', 1, 4))
  2 Comments
MATLABhelp
MATLABhelp on 16 Jan 2019
Thanks for the reply, that is how the graph should look, but how would you plot both graphs on the same plot? The original plot, and the reshaped plot?
Star Strider
Star Strider on 16 Jan 2019
As always, my pleasure.
The plot is not reshaped. Probably a better way to define the axis limits is:
axis([min(points(1,:)) max(points(1,:)) min(points(2,:)) max(points(2,:))])
This produces the same plot, as does:
axis('tight')

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots 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!