그래프 빌더에서 색상 열을 동적으로 변경하는 방법안녕,
Graph Builder 객체를 생성하면 다음과 같이 변수를 정의할 수 있습니다. Variables(X(:x), Y(:y), Color(:color))
내가 하고 싶은 것은 목록에서 특정 열을 선택하여 색상 열을 동적으로 변경하는 것입니다. 어떻게 하면 이것을 달성할 수 있을까요?
미리 감사드립니다.
데이터 탐색 및 시각화Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법흥미롭네요. 저는 당신의 대본에서 조각조각을 얻은 것 같지만, 다음 주에 이 작업을 하려면 시간이 좀 필요할 것 같아요.
Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법스크립트의 매우 빠른 버전은 다음과 같습니다.
Names Default To Here(1);
If(Is Empty(Current Report()),
Throw("No open reports found");
);
cur_report = Current Report() << XPath("//OutlineBox[@helpKey='Graph Builder']");
If(N Items(cur_report) < 1,
Throw("No graph builder open");
,
cur_report = cur_report[1] << Get Scriptable Object;
dt = cur_report << Get Data Table;
);
// Find current Color role
find_role_column = Function({gb, role = "Color"}, {Default Local},
vars = gb << Get Variables();
col = "";
role_idx = 0;
For Each({var, idx}, vars,
role = var["Role"];
If(role == "Color",
col = var[1] << get name;
role_idx = idx;
break();
);
);
return(Eval List({col, role_idx}));
);
replace_role_column = function({gb, new_col, role = "Color"}, {Default Local},
{colname, role_idx} = find_role_column(gb);
gb << inval;
If(role_idx > 0,
gb << Remove Variable(role_idx);
);
Eval(EvalExpr(
gb << Add Variable({Expr(NameExpr(AsColumn(new_col))), Role(Expr(role))});
));
wait(0);
gb << update window;
return(1);
);
nw = new window("demo",
clb = Col List Box(Datatable(dt), width(250), maxSelected(1),
<< Set Function(function({this},
replace_role_column(cur_report, this << get selected, "Color");
));
)
);
clb << Set Items(dt << Get Column Names("String"));
더 나은 것을 만드는 데는 시간이 좀 걸릴 것이고 주말에 만들 시간이 충분할 수도 있습니다(내 Column Quick Swapper와 매우 유사합니다. Graph Builder에서 여러 Y축과 X축 열을 쉽게 변경할 수 있습니다 )
Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법저는 Role Switcher라는 새로운 스위처를 추가하기 위한 소원 목록 항목을 만들었습니다. 현재로서는 스크립팅 솔루션이 필요할 것 같습니다. 그래프 빌더와 색상 역할로만 제한 된다면 만들기가 좀 더 쉽습니다(시간이 되면 이에 대한 애드인을 만들 가능성이 큽니다).
Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법'열 전환기의 유일한 "문제"는 여러 역할에서 동시에 같은 열을 가질 수 없다는 것입니다.': 불행히도, 이게 바로 제가 필요한 것입니다.
Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법그게 바로 컬럼 스위처가 하는 일이 아니겠어요? 컬럼 스위처의 유일한 "문제"는 여러 역할에서 동시에 같은 컬럼을 가질 수 없다는 것입니다.
Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법안녕하세요, Jarmo님. 맞는 말씀입니다. 하지만 분명 더 정확하게 말씀드려야 할 것 같습니다. 열 전환 기능은 색상 열에만 영향을 미쳐야 하고, x나 y 열에는 영향을 미쳐서는 안 됩니다.
Re: 그래프 빌더에서 색상 열을 동적으로 변경하는 방법이 경우 열 전환기를 사용할 수 있습니다.



