How to erase a data point in plotting

44 visualizzazioni (ultimi 30 giorni)
Emily
Emily il 18 Lug 2022
Modificato: Star Strider il 18 Lug 2022
Hi, there is a false data point at [500,0] that I want to remove
I thought of using
([500,0],:)=[]
but not quite sure how to get it working or if a different method is better.
%current plot
pline=plot([Trend]+231,[Trend.count]-Trend.mean, '-s')
  3 Commenti
Emily
Emily il 18 Lug 2022
I would perfer to remove it from the data, then plot.
But if that's not possible, am ok with just not seeing it on the plot.
Abderrahim. B
Abderrahim. B il 18 Lug 2022
To delete an element from an array use [ ].
A = [100 1 2 3 5 3 6 6] ;
plot(1:length(A), A, 'r')
A(1) = []
A = 1×7
1 2 3 5 3 6 6
plot(1:length(A), A)

Accedi per commentare.

Risposte (1)

Star Strider
Star Strider il 18 Lug 2022
Modificato: Star Strider il 18 Lug 2022
There are several ways to do this, the most obvious being —
x = 0 : 100: 1000; % Create Data — 'x' Is Actually 'Trend+231'
y = randn(size(x)); % Create Data — 'y' Is Actually 'Trend.count-Trend.mean'
y(6) = 0; % Create Data — Define Point
figure
plot(x, y, '.-')
idx = find((x == 500) & (y == 0));
x(idx) = [];
y(idx) = [];
figure
plot(x, y, '.-')
This assumes there could be several values at ‘x=500’ so it eliminates only the 0 value. If there is only one value at that point, it would only be necessary to test for ‘x==500’.
.

Categorie

Scopri di più su Data Distribution Plots in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by