# Scatter chart with colours from dark to light along the x-axis and blue to red along the y-axis

4 ビュー (過去 30 日間)
T 2023 年 1 月 4 日
コメント済み: William Rose 2023 年 1 月 17 日
Hi,
I made a scatter based on interpolation of RGB colours (using only R and B) based on the y-axis data. Now I want the colours to change from dark to light based on the data of x axis. How can I do that? Thanks in advance!
Here is what I have right now and what I get:
b = [0 0 1]; % Blue
r = [1 0 0]; % Red
x =[27.5 26.8 68 70.5 43.5 45.2 72];
y = [7.2 3 7.9 1.7 4.23 1.057 0.89];
y_min_max = [min(y);max(y)];
color = interp1(y_min_max,[b;r],y);
figure()
s = scatter(x,y,80,color,'filled');
grid on; grid minor; box on
xlabel('x')
ylabel('y')

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

### 採用された回答

William Rose 2023 年 1 月 5 日

b = [0 0 1]; % Blue
r = [1 0 0]; % Red
%x =[27.5 26.8 68 70.5 43.5 45.2 72];
%y = [7.2 3 7.9 1.7 4.23 1.057 0.89];
x = rand(1,1000);
y = rand(1,1000);
y_min_max = [min(y);max(y)];
color = interp1(y_min_max,[b;r],y); %initial color based on y value
lightness=(x-min(x))/(max(x)-min(x)); %lightness of each point, in [0,1]
lightness=repmat(lightness',1,3);
color2=color.*lightness; %adjust lightness of each point
figure()
s = scatter(x,y,80,color2,'filled');
grid on; grid minor; box on
xlabel('x')
ylabel('y')
Good luck.
##### 4 件のコメント2 件の古いコメントを表示2 件の古いコメントを非表示
T 2023 年 1 月 16 日
Thanks William!
William Rose 2023 年 1 月 17 日
@T, you're welcome. The answer I posted as a comment is better, in my opinion, than my initial answer. Good luck.

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

### カテゴリ

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

### Community Treasure Hunt

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

Start Hunting!

Translated by