Search Results

Search found 12611 results on 505 pages for 'matlab figure'.

Page 20/505 | < Previous Page | 16 17 18 19 20 21 22 23 24 25 26 27  | Next Page >

  • matlab: simple matrix filtering - group size

    - by Art
    I have a huuuge matrix storing information about X and Y coordinates of multiple particle trajectories , which in simplified version looks like that: col 1- track number; col 2- frame number; col 2- coordinate X; col 3- coordinate Y for example: A = 1 1 5.14832 3.36128 1 2 5.02768 3.60944 1 3 4.85856 3.81616 1 4 5.17424 4.08384 2 1 2.02928 18.47536 2 2 2.064 18.5464 3 1 8.19648 5.31056 3 2 8.04848 5.33568 3 3 7.82016 5.29088 3 4 7.80464 5.31632 3 5 7.68256 5.4624 3 6 7.62592 5.572 Now I want to filter out trajectories shorter than lets say 2 and keep remaining stuff like (note renumbering of trajectories): B = 1 1 5.14832 3.36128 1 2 5.02768 3.60944 1 3 4.85856 3.81616 1 4 5.17424 4.08384 2 1 8.19648 5.31056 2 2 8.04848 5.33568 2 3 7.82016 5.29088 2 4 7.80464 5.31632 2 5 7.68256 5.4624 2 6 7.62592 5.572 How to do it efficiently? I can think about some ideas using for loop and vertcat, but its the slowest solution ever :/ Thanks!

    Read the article

  • Graphing special functions in Matlab (2D Bessel)

    - by favala
    I'm trying to essentially get something like this where I can see clear ripples at the base but otherwise it's like a Gaussian: This is kind of unsatisfactory because the ripples aren't very noticeable, it has a very gritty quality that obscures the image a bit, and if you move the graph so that it's just in 2D (so it looks like a circle) I'm not even sure if it's quite like how it should be (the concentric circles seem to be more evenly spaced in the real thing). So, is there a better way to do this? a = 2*pi; [X Y] = meshgrid(-1:0.01:1,-1:0.01:1); R = sqrt(X.^2+Y.^2); f = (2*besselj(1,a*R(:))./R(:)).^2; mesh(X,Y,reshape(f,size(X))); axis vis3d;

    Read the article

  • Problem using find function in Matlab

    - by Peter Etchells
    Hi all, I have two arrays of data that I'm trying to amalgamate. One contains actual latencies from an experiment in the first column (e.g. 0.345, 0.455... never more than 3 decimal places), along with other data from that experiment. The other contains what is effectively a 'look up' list of latencies ranging from 0.001 to 0.500 in 0.001 increments, along with other pieces of data. Both data sets are X-by-Y doubles. What I'm trying to do is something like... for i = 1:length(actual_latency) row = find(predicted_data(:,1) == actual_latency(i) full_set(i,1:4) = [actual_latency(i) other_info(i) predicted_info(row,2)... predicted_info(row,3)]; end ...in order to find the relevant row in predicted_data where the look up latency corresponds to the actual latency. I then use this to created an amalgamated data set, full_set. I figured this would be really simple, but the find function keeps failing by throwing up an empty matrix when looking for an actual latency that I know is in predicted_data(:,1) (as I've double-checked during debugging). Moreover, if I replace find with a for loop to do the same job, I get a similar error. It doesn't appear to be systematic - using different participant data sets throws it up in different places. Furthermore, during debugging mode, if I use find to try and find a hard-coded value of actual_latency, it doesn't always work. Sometimes yes, sometimes no. I'm really scratching my head over this, so if anyone has any ideas about what might be going on, I'd be really grateful.

    Read the article

  • MATLAB help required function root

    - by programmeur
    Dear All, I have made an program, function bisection; x1=input('enter the first value=') x2=input('enter the second value=') %f3=[]; for x=1:20 %x=1; x3=(x1+x2)/2; while x3-x1 >= 0.001 f3(x)=x3^3 + x3^2 - 3*x3 - 3; f1(x)=x1^3 + x1^2 - 3*x1 - 3; if ((f3(x)*f1(x)) < 0) x2=x3; else x1=x3; end break end format long f3' disp('The root is found to be ='); x3 end . . . . . program calculate function of interval (x1, x2) given by user, my program compile and execute but little stupid repetition until for loop complete, i want to stop further printing loop when desired value is achieved with while condition is used.

    Read the article

  • Iterating through struct fieldnames in MATLAB.

    - by Noio
    My question is easily summarized as: "Why does the following not work?" teststruct = struct('a',3,'b',5,'c',9) fields = fieldnames(teststruct) for i=1:numel(fns) fns(i) teststruct.(fns(i)) end output: ans = 'a' ??? Argument to dynamic structure reference must evaluate to a valid field name. Especially since teststruct.('a') does work. And fns(i) prints out ans = 'a'. I can't get my head around it.

    Read the article

  • Plot overlaps in matlab

    - by ZaZu
    Hey there, I got a strange problem that the plot overlaps in the graph, but not in the image. I am sure I didnt leave hold on somewhere or else it will overlap in the image itself as well. Here is a sample : Any ideas ? Thanks

    Read the article

  • MATLAB pdist function

    - by James
    Hi, I am using the pdist command to find the distance between x and y coordinates stored in a matrix. X = [100 100; 0 100; 100 0; 500 400; 300 600;]; D = pdist(X,'euclidean') Which returns a 15 element vector. : [0.734979755525412 3.40039811339820 2.93175207511321 1.83879677592575 2.40127440268306 2.75251513299386 2.21488402640753 1.10610649500317 1.81674017301699 0.903207751535635 1.99116952754924 1.05069952386082 1.24122819418333 1.08583377275532 1.38729428638035] Is there a way to associate these distances with the coordinates they were derived from, i.e. store them in a matrix with the general row form: [Length xcoordinate1 ycoordinate1 xcoordinate2 ycoordinate2] Where there is a row for each length found? Thanks in advance

    Read the article

  • Matlab Error- fplot();

    - by udsha
    >> fplot(fh,[-2 4]) ??? Undefined function or variable "e". Error in ==> myfun at 3 Y(:,2) = e(:).^x; Error in ==> fplot at 102 x = xmin; y = feval(fun,x,args{4:end}); I tried to plot two function using this m file. function Y = myfun(x) Y(:,1) = 3*x; Y(:,2) = e(:).^x;

    Read the article

  • MATLAB syntax of (:)

    - by user198729
    >> I=[2 1 3;3 2 4] I = 2 1 3 3 2 4 >> I(:) ans = 2 3 1 2 3 4 >> I(1:2) ans = 2 3 >> Why the first call I(:) returns a vector while the second I(1:2) doesn't which is essentially the same as I(:)?

    Read the article

  • Help in optimizing a for loop in matlab

    - by HH
    I have a 1 by N double array consisting of 1 and 0. I would like to map all the 1 to symbol '-3' and '3' and all the 0 to symbol '-1' and '1' equally. Below is my code. As my array is approx 1 by 8 million, it is taking a very long time. How to speed things up? [row,ll] = size(Data); sym_zero = -1; sym_one = -3; for loop = 1 : row if Data(loop,1) == 0 Data2(loop,1) = sym_zero; if sym_zero == -1 sym_zero = 1; else sym_zero = -1; end else Data2(loop,1) = sym_one; if sym_one == -3 sym_zero = 3; else sym_zero = -3; end end end

    Read the article

  • Weighted random numbers in MATLAB

    - by yuk
    How to randomly pick up N numbers from a vector a with weight assigned to each number? Let's say: a = 1:3; % possible numbers weight = [0.3 0.1 0.2]; % corresponding weights In this case probability to pick up 1 should be 3 times higher than to pick up 2. Sum of all weights can be anything.

    Read the article

  • Add inputs to more than one row in a structure array in matlab

    - by ZaZu
    Hi there, I would like to know how can I get certain inputs and put them in more than one row in the structure ... I basically want a structure that updates one input per row in ever loop. The loop is looped 30 times, so I want to have 30 rows and 2 columns ( x and y columns) I have this code : For N=1:30 . . . Binary = bwlabel(blacknwhite); s = regionprops(Binary,'centroid'); centroids = cat(1, s.Centroid); hold(imgca,'on') plot(imgca,centroids(1,1), centroids(1,2),'r*') . . . end I dont think this does what I want ... only the first row is updated in my loop .. So how can I create this structure ? If you want more info please tell me and I will update it right away. Thanks !

    Read the article

  • Add inputs to more than one row in a cell array in matlab

    - by ZaZu
    Hi there, I would like to know how can I get certain inputs and put them in more than one row in the cell array ... I basically want an array that updates one input per row in ever loop. The loop is looped 30 times, so I want to have 30 rows and 2 columns ( x and y columns) I have this code : For N=1:30 . . . Binary = bwlabel(blacknwhite); s = regionprops(Binary,'centroid'); centroids = cat(1, s.Centroid); hold(imgca,'on') plot(imgca,centroids(1,1), centroids(1,2),'r*') . . . end I dont think this does what I want ... only the first row is updated in my loop .. So how can I create this cell array ? If you want more info please tell me and I will update it right away. Thanks !

    Read the article

  • How can I find the value of a blury image Matlab question

    - by user332447
    Is there a method to detect the value of a image rgb that is blury? I simply want to store the blury value of my image in a variable called blury value? Is there a dedicated function? %image1 which is rgb is stored in variable img1 img1 = imread('102.jpg'); % conversion to grayscale stored in img1_grey variable img1_grey = rgb2gray(img1); blury_value = function_matlab(img1)

    Read the article

  • radio button group matlab

    - by vijisai
    i have two set of button groups. first button groups has two radio buttons and second group has four radio buttons. if button 1 is selected in group1 and any one from the group 2. similarly for button2 in group 1 and any one from group2, respective function calls must be made on click of push button with these combinations. how to do it. there will be 8 separate function calls for their respective combinations. how to do the combination of button groups. switch case or if else statement did not work out?? kindly help.

    Read the article

  • convert string array to cell in MATLAB

    - by Maddy
    I need to output a cell to an excel file. Before this I need to convert a date column of integers to datestrings. I know how to do this, but I am not able to put this new string array back into the cell - mycell = { 'AIR' [780] [1] [734472] [0.01] ; ... 'ABC' [780] [1] [734472] [0.02]} I did this -- dates = datestr(cell2mat(mycell(:,4))) ; What I need as an answer is: {'AIR' [780] [1] '14-Dec-2010' [0.01] ; 'ABC' [780] [1] '23-Dec-2010' [0.03] ; } so that I can now send it to an excel file using xlswrite.m

    Read the article

  • matlab noise cleaning

    - by gil
    how can i clean image from noise? i have a program that create images, and i have noises in the images, like a shadow of the object that in the image. how can i clean it? i tried to use a level, but i didn't work.

    Read the article

  • putting data from a for loop into a table using matlab and fprintf

    - by user2928537
    I am trying to put the following data from my for loop into a table formatted so that there are 11 values of F in each column, with a total of 4 columns. but I am always ending up with one long column of my data instead of the four columns I want. I was wondering if there is some way to put the data into a matrix and then reshape it, but I am having trouble. Any help greatly appreciated. fprintf ('Electrostatic Forces:\n') for r = 1:4; q2 = 0: 1*10^-19: 1*10^-18; for F = coulomb(q2,r); fprintf ('%d\n',F) end end Where the code for the function coulomb is function F = coulomb (q2,r); k = 8.98*10^9; q1 = 1.6*10^-19; F = k*abs(q1*q2)/r^2; end

    Read the article

  • Matlab: plotting frequency distribution with a curve

    - by Kaly
    I have to plot 10 frequency distributions on one graph. In order to keep things tidy, I would like to avoid making a histogram with bins and would prefer having lines that follow the contour of each histogram plot. I tried the following [counts, bins] = hist(data); plot(bins, counts) But this gives me a very inexact and jagged line. I read about ksdensity, which gives me a nice curve, but it changes the scaling of my y-axis and I need to be able to read the frequencies from the y-axis. Can you recommend anything else?

    Read the article

  • What does L == 2 mean in MATLAB?

    - by Matlaber
    BW = logical([1 1 1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 0 0 0 0 0]); L = bwlabel(BW,4); [r,c] = find(L == 2); How can a matrix been compared with scalar?

    Read the article

< Previous Page | 16 17 18 19 20 21 22 23 24 25 26 27  | Next Page >