Modifying the contour plot from ksdensity

14 ビュー (過去 30 日間)
J T
J T 2020 年 1 月 24 日
コメント済み: J T 2020 年 1 月 28 日
Hello,
I am trying to modify the 2D contour figure automatically generated by ksdensity for my bi-variate data.
I used the following lines, where ``data`` is a matrix size of 16000-by-2:
>> ksdensity(data,'PlotFcn','contour');
I used ``gcf``, ``gca``, ``findobj`` to extract the current figure, axis, object, however, I couldn't modify any of the properties I need. For example, setting it to a filled contour ('fill', 'on'), turning off the lines ('Linestyle','none') and increasing the level.
Does anyone know how to do this? Thanks!

採用された回答

Samatha Aleti
Samatha Aleti 2020 年 1 月 28 日
Hi,
As you are directly plotting using ksdensity function, you may not be able to change properties of plot. Instead of that, you may get the probability density estimate f” (let) using “ksdensity function and then plot separately. By doing this, you can use the plot object to change the properties as you need.
Below is the syntax:
[M,c] = contour( f );
c.LineStyle = '-.' ;
Refer the following documentation links for further details:
  1 件のコメント
J T
J T 2020 年 1 月 28 日
Hi Samatha,
So I obtained ``f`` from the following command where ``data`` is a two-column matrix (16000-by-2 in my case) and attempted to do what you mentioned above:
[f,x] = ksdensity(data,'function','pdf');
contour(f);
It didn't work because ``f`` is a vector size of (900-by-1), do you know how I could have ``ksdensity`` to return a field that could be passed on for contour plot?

サインインしてコメントする。

その他の回答 (0 件)

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by