How to bin x y graph

4 views (last 30 days)
Parag on 2 Sep 2015
Commented: Image Analyst on 21 Oct 2015
Hi guys
I have a x, y graph,as shown in picture. I want to combined it to one single curve. Can you please let me know how to do that. I tried using binning but my x and y values are dependent means when I plot only y data it looks different. I will appreciate your help. Thank you
  1 Comment
dpb on 2 Sep 2015
Which toolbox(es) do you have available or base Matlab only? What is the intended end use of the smoothed/single curve?

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 19 Oct 2015
Combine all the arrays into single x and y arrays, then you can sort the data based on the x values, then use sgolayfilt() in the Signal Processing Toolbox. I've attached an example.
Image Analyst
Image Analyst on 21 Oct 2015
It's not the way I would have done it, though it may work. Using the histogram basically gives you quantized data, which is coarser than your original sampling. You use 5000 bins to try to have it be less quantized but with that many bins, you may have many bins with just one value in them, unless you have hundreds or millions of values. So the final mean curve may look kind of noisy. With sgolayfilt() you don't have those problems. First I'd pass the data into interp1() to get uniformly sampled data, then I'd call sgolayfilt() - it's like 2 lines of code.
For fitting a plane, I'd recommend polyfitn() by John D'Errico Attached is an example.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by