How to make a colourful interactive GUI spectrum slider?

2 ビュー (過去 30 日間)
Hannah
Hannah 2021 年 9 月 14 日
回答済み: Mohammad Sami 2021 年 9 月 15 日
Hello, I want to make a colorful spectrum where the user can use a slider to control the input value. Input values go from 20 to 1112.5 with a resolution of 0.1. every input value corresponds to an output value which I have stored. I know how to make the user type their input value and return the corresponding output but I just have no idea how to make the GUI spectrum slider. Every input corresponds to a percentage (i.e. the output is a percentage) and I want the shading of the spectrum to be greener as it gets closer to 100% and more red as it gets closer to 0%.
Can someone help me please? :)
  4 件のコメント
Jan
Jan 2021 年 9 月 14 日
There is no slider object, which let you choose a background image. But you can move an object on top of an axes. In older Matlab versions the colormapeditor was a useful example.
Hannah
Hannah 2021 年 9 月 14 日
i see, thanks

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

回答 (1 件)

Mohammad Sami
Mohammad Sami 2021 年 9 月 15 日
While there is no slider object which have the spectrum as the background, you can however achieve this effect by layering uislider on top of an uiimage with spectrum. I used a gridlayout, but you can also set the position property. However in case of resize you will then have to set the position again. Therefore using a gridlayout would be preferable.
a = uifigure;
g = uigridlayout(a,[5 5]);
b = uiimage(g,'ImageSource','spectrum.png','ScaleMethod','fill');
b.Layout.Row = 2;
b.Layout.Column = 2;
c = uislider(g);
c.Layout.Row = 2;
c.Layout.Column = 2;

カテゴリ

Help Center および File ExchangeLine Plots についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by