Plotting plain grid of size 100 X 100 AND selecting a "block" in the grid
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ammar Babikir
le 31 Août 2017
Commenté : Evangelos Rompogiannakis
le 18 Nov 2020
I'm trying to plot a plain grid of a certain size. The regular " grid on " function gives me an automatic 1 X 1 grid.
I'm trying to plot a grid that is 100 X 100 and having each block a size of 1 X 1. This is what I have attempted so far:
x = (0:1:100)
y = (0:1:100)
fig1 = plot(x,x)
grid on
xlabel('x-axis')
ylabel('y-axis')
This is what it outputs
I'd like to output this grid without the line y=x showing up on it.
Also, I am trying to figure out how to select a specific block on the grid. I know that I can select a specific point on the grid but how would I be able to "shade in" an exact block on the grid.
0 commentaires
Réponse acceptée
Star Strider
le 31 Août 2017
Try this:
figure(1)
plot([0:100; 0:100], [0:100; 0:100], 'k')
hold on
fill([0 1 1 0]+50, [0 0 1 1]+50, 'r') % Colour (50,50) Red
hold off
hax = gca;
hax.XTick = 0:100;
hax.YTick = 0:100;
hax.XTickLabel = [];
hax.YTickLabel = [];
grid
axis square
8 commentaires
Star Strider
le 1 Sep 2017
The ‘hax’ variable is the handle to the axes object created with the initial plot call. See the documentation on Axis Properties (link) for a full description.
The hold calls permit plotting more objects (here the fill call) on the same axes. I use ‘hold on’ and ‘hold off’ to keep track of the hold state. Without the ‘on’ and ‘off’ designators, hold simply toggles the hold state.
Evangelos Rompogiannakis
le 18 Nov 2020
If i want to fill all the blocks where y < x how can i do it ??
Voir également
Catégories
En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!