Управление цветами планшета

z8080 спросил: 28 апреля 2018 в 09:36 в: matlab

Я пытался сделать строки в моем графике scatterhist того же цвета, что и маркеры:

x = randn(1,20);
y = randn(1,20);
myColour = [1 0 0]; % red
scatterhist(x, y, 'Color', myColour);
mygca = get(gca,'children');
set(mygca,'markerfacecolor', myColour);

Однако, бары имеют немного отличающийся цвет, а именно красноватый оттенок, [249 96 96]:

Документация Scatterhist, по-видимому, предполагает, что цвета колонок следуют за цветом маркера , который в этом случае не выполняется.

Как я могу контролировать цвет столбцов scatterhist, на MATLAB R2016a?

1 ответ

Есть решение
Dev-iL ответил: 28 апреля 2018 в 10:12

Это происходит потому, что в барах есть параметр alpha (прозрачность).

Чтобы исправить это, убедитесь, что для параметра 'FaceAlpha' установлено значение 1. Например:

x = randn(1,20);
y = randn(1,20);
myColour = [1 0 0];
hSh = scatterhist(x, y, 'Color', myColour);
hSh(1).Children.MarkerFaceColor = myColour;
hSh(2).Children.FaceAlpha = 1;
hSh(3).Children.FaceAlpha = 1;

Что дает:

Dev-iL ответил: 28 апреля 2018 в 11:02
Пожалуйста!