将图表附加到新窗口中我的数据有两组输入数据,我将它们存储在“源表”列下。
然后,我编写 for 循环来绘制图表并从源表中设置本地过滤器。然而,各个图结果是正确的,在我尝试附加图的新窗口中,图没有应用本地过滤器。
New Window( "Plot", tb = tab Box() );
For( i = 1, i <= N Items( list ), i++,
obj = Graph Builder(
Size( 1122, 1095 ),
Variables( X( :sequence ), Y( :Data ), Group X( :Source Table), Group X(:SERIAL_NO ), Group Y( :Group ), Overlay( :Label ) ),
Elements( Line( X, Y, Legend( 10 ) ) ),
Local Data Filter(
Add Filter(
columns( :Source Table ),
Where( :Source Table == list [i] ),
Display( :Source Table, Size( 181, 34 ), List Display )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Line Style( "DashDot" )}, Item ID( "CTAP1", 1 ) ),
Properties( 1, {Line Style( "DashDot" )}, Item ID( "CTAP2", 1 ) ),
Properties( 2, {Line Color( 0 ), Line Style( "DashDot" )}, Item ID( "CTAP3", 1 ) ),
Properties( 3, {Line Color( 9 ), Line Style( "DashDot" )}, Item ID( "CTAP4", 1 ) ),
Properties( 4, {Line Style( "Dotted" )}, Item ID( "Inline_X", 1 ) ),
Properties( 5, {Line Style( "Dotted" )}, Item ID( "Inline_Y", 1 ) ),
Properties( 8, {Line Color( 5 )}, Item ID( "MZ1_L", 1 ) ),
Properties( 9, {Line Color( 5 ), Line Style( "Dashed" )}, Item ID( "MZ1_R", 1 ) ),
Properties( 10, {Line Color( 3 )}, Item ID( "MZ2_L", 1 ) ),
Properties( 11, {Line Color( 3 ), Line Style( "Dashed" )}, Item ID( "MZ2_R", 1 ) ),
Properties( 12, {Line Color( 0 )}, Item ID( "MZ3_L", 1 ) ),
Properties( 13, {Line Color( 0 ), Line Style( "Dashed" )}, Item ID( "MZ3_R", 1 ) ),
Properties( 14, {Line Color( 9 )}, Item ID( "MZ4_L", 1 ) ),
Properties( 15, {Line Color( 9 ), Line Style( "Dashed" )}, Item ID( "MZ4_R", 1 ) )
)}
)
)
);
tb << append( "Tab",Report( obj ) );
//obj << delete;
);回复:将图表附加到新窗口中现在我尝试通过按子组创建不同的“选项卡”来添加另一个图层。
在侧面每个子组将是相同的图(通过:源表)
下面是脚本。 我创建了新选项卡,但所有绘图都在选项卡“???”中
Summarize( unique_value = by( :SubGroup) );
list1 = unique_value;
Summarize( unique_value = by( :Source Table ) );
list2 = unique_value;
New Window( "Plot", Tab Box( "The Results", tb = Tab Box(), vlb = V List Box() ) );
For( j = 1, j <= N Items( list1 ), j++,
tb << Add(
"Group" || list1[j],
For( i = 1, i <= N Items( list2 ), i++,
tb << append(
vlb << append(
obj = Graph Builder(
Size( 1122, 1095 ),
Variables(
X( :sequence ),
Y( :Data ),
Group X( :Source Table ),
Group X( :SERIAL_NO ),
Group Y( :Group ),
Overlay( :Label )
),
Elements( Line( X, Y, Legend( 10 ) ) ),
Local Data Filter(
Add Filter(
columns( :Source Table, :SubGroup ),
Where( :Source Table == list2[i] ),
Where( :SubGroup == list1[j] ),
Display( :Source Table, Size( 181, 34 ), List Display )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Line Style( "DashDot" )}, Item ID( "CTAP1", 1 ) ),
Properties( 1, {Line Style( "DashDot" )}, Item ID( "CTAP2", 1 ) ),
Properties( 2, {Line Color( 0 ), Line Style( "DashDot" )}, Item ID( "CTAP3", 1 ) ),
Properties( 3, {Line Color( 9 ), Line Style( "DashDot" )}, Item ID( "CTAP4", 1 ) ),
Properties( 4, {Line Style( "Dotted" )}, Item ID( "Inline_X", 1 ) ),
Properties( 5, {Line Style( "Dotted" )}, Item ID( "Inline_Y", 1 ) ),
Properties( 8, {Line Color( 5 )}, Item ID( "MZ1_L", 1 ) ),
Properties( 9, {Line Color( 5 ), Line Style( "Dashed" )}, Item ID( "MZ1_R", 1 ) ),
Properties( 10, {Line Color( 3 )}, Item ID( "MZ2_L", 1 ) ),
Properties( 11, {Line Color( 3 ), Line Style( "Dashed" )}, Item ID( "MZ2_R", 1 ) ),
Properties( 12, {Line Color( 0 )}, Item ID( "MZ3_L", 1 ) ),
Properties( 13, {Line Color( 0 ), Line Style( "Dashed" )}, Item ID( "MZ3_R", 1 ) ),
Properties( 14, {Line Color( 9 )}, Item ID( "MZ4_L", 1 ) ),
Properties( 15, {Line Color( 9 ), Line Style( "Dashed" )}, Item ID( "MZ4_R", 1 ) )
)}
)
)
)
)
)
)
)
);
回复:将图表附加到新窗口中谢谢。回复:将图表附加到新窗口中我稍微改变了你的脚本,它似乎运行没有错误。本地过滤器正在做出不同的选择。这是我的脚本
Names Default To Here( 1 );
dt = Current Data Table();
Summarize( unique_value = by( :Source Table ) );
list = unique_value;
New Window( "Plot", Tab Box( "The Results", tb = H List Box() ) );
For( i = 1, i <= N Items( list ), i++,
tb << append(
obj = Graph Builder(
Size( 1122, 1095 ),
Variables(
X( :sequence ),
Y( :Data ),
Group X( :Source Table ),
Group X( :SERIAL_NO ),
Group Y( :Group ),
Overlay( :Label )
),
Elements( Line( X, Y, Legend( 10 ) ) ),
Local Data Filter(
Add Filter(
columns( :Source Table ),
Where( :Source Table == list[i] ),
Display( :Source Table, Size( 181, 34 ), List Display )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Line Style( "DashDot" )}, Item ID( "CTAP1", 1 ) ),
Properties( 1, {Line Style( "DashDot" )}, Item ID( "CTAP2", 1 ) ),
Properties( 2, {Line Color( 0 ), Line Style( "DashDot" )}, Item ID( "CTAP3", 1 ) ),
Properties( 3, {Line Color( 9 ), Line Style( "DashDot" )}, Item ID( "CTAP4", 1 ) ),
Properties( 4, {Line Style( "Dotted" )}, Item ID( "Inline_X", 1 ) ),
Properties( 5, {Line Style( "Dotted" )}, Item ID( "Inline_Y", 1 ) ),
Properties( 8, {Line Color( 5 )}, Item ID( "MZ1_L", 1 ) ),
Properties( 9, {Line Color( 5 ), Line Style( "Dashed" )}, Item ID( "MZ1_R", 1 ) ),
Properties( 10, {Line Color( 3 )}, Item ID( "MZ2_L", 1 ) ),
Properties( 11, {Line Color( 3 ), Line Style( "Dashed" )}, Item ID( "MZ2_R", 1 ) ),
Properties( 12, {Line Color( 0 )}, Item ID( "MZ3_L", 1 ) ),
Properties( 13, {Line Color( 0 ), Line Style( "Dashed" )}, Item ID( "MZ3_R", 1 ) ),
Properties( 14, {Line Color( 9 )}, Item ID( "MZ4_L", 1 ) ),
Properties( 15, {Line Color( 9 ), Line Style( "Dashed" )}, Item ID( "MZ4_R", 1 ) )
)}
)
)
)
)
);
回复:将图表附加到新窗口中你好,
抱歉没有说清楚。 我尝试根据“源表”列创建 2 个图。 在原始数据中,有 2 个类别(内部和外部)。
我尝试了您的脚本,但将列表更改回源表类型。
现在该图显示在新窗口中,但两个图都显示本地过滤器源表 = 内部。
我想要它显示
- 第一个图:本地过滤器源表=内部。
- 第二张图:本地过滤器源表=外部。
Names Default To Here( 1 );
dt = Current Data Table();
Summarize( unique_value = by( :Source Table ) );
list = unique_value;
New Window( "Plot",
tb = Tab Box(),
For( i = 1, i <= N Items( list ), i++,
tb << append(
obj = Graph Builder(
Size( 1122, 1095 ),
Variables(
X( :sequence ),
Y( :Data ),
Group X( :Source Table ),
Group X( :SERIAL_NO ),
Group Y( :Group ),
Overlay( :Label )
),
Elements( Line( X, Y, Legend( 10 ) ) ),
Local Data Filter(
Add Filter(
columns( :Source Table ),
Where( :Source Table == list[i] ),
Display( :Source Table, Size( 181, 34 ), List Display )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Line Style( "DashDot" )}, Item ID( "CTAP1", 1 ) ),
Properties( 1, {Line Style( "DashDot" )}, Item ID( "CTAP2", 1 ) ),
Properties( 2, {Line Color( 0 ), Line Style( "DashDot" )}, Item ID( "CTAP3", 1 ) ),
Properties( 3, {Line Color( 9 ), Line Style( "DashDot" )}, Item ID( "CTAP4", 1 ) ),
Properties( 4, {Line Style( "Dotted" )}, Item ID( "Inline_X", 1 ) ),
Properties( 5, {Line Style( "Dotted" )}, Item ID( "Inline_Y", 1 ) ),
Properties( 8, {Line Color( 5 )}, Item ID( "MZ1_L", 1 ) ),
Properties( 9, {Line Color( 5 ), Line Style( "Dashed" )}, Item ID( "MZ1_R", 1 ) ),
Properties( 10, {Line Color( 3 )}, Item ID( "MZ2_L", 1 ) ),
Properties( 11, {Line Color( 3 ), Line Style( "Dashed" )}, Item ID( "MZ2_R", 1 ) ),
Properties( 12, {Line Color( 0 )}, Item ID( "MZ3_L", 1 ) ),
Properties( 13, {Line Color( 0 ), Line Style( "Dashed" )}, Item ID( "MZ3_R", 1 ) ),
Properties( 14, {Line Color( 9 )}, Item ID( "MZ4_L", 1 ) ),
Properties( 15, {Line Color( 9 ), Line Style( "Dashed" )}, Item ID( "MZ4_R", 1 ) )
)}
)
)
)
);
);
);
回复:将图表附加到新窗口中我添加了一个名为“list”的列表,并且必须将结束的“)”从 New Window 语句移到代码末尾。现在它适用于您的样本数据
names default to here(1);
dt=current data table();
list={"data"};
New Window( "Plot", tb = Tab Box() ,
For( i = 1, i <= N Items( list ), i++,
tb << append(
obj = Graph Builder(
Size( 1122, 1095 ),
Variables(
X( :sequence ),
Y( :Data ),
Group X( :Source Table ),
Group X( :SERIAL_NO ),
Group Y( :Group ),
Overlay( :Label )
),
Elements( Line( X, Y, Legend( 10 ) ) ),
Local Data Filter(
Add Filter(
columns( :Source Table ),
Where( :Source Table == list[i] ),
Display( :Source Table, Size( 181, 34 ), List Display )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Line Style( "DashDot" )}, Item ID( "CTAP1", 1 ) ),
Properties( 1, {Line Style( "DashDot" )}, Item ID( "CTAP2", 1 ) ),
Properties( 2, {Line Color( 0 ), Line Style( "DashDot" )}, Item ID( "CTAP3", 1 ) ),
Properties( 3, {Line Color( 9 ), Line Style( "DashDot" )}, Item ID( "CTAP4", 1 ) ),
Properties( 4, {Line Style( "Dotted" )}, Item ID( "Inline_X", 1 ) ),
Properties( 5, {Line Style( "Dotted" )}, Item ID( "Inline_Y", 1 ) ),
Properties( 8, {Line Color( 5 )}, Item ID( "MZ1_L", 1 ) ),
Properties( 9, {Line Color( 5 ), Line Style( "Dashed" )}, Item ID( "MZ1_R", 1 ) ),
Properties( 10, {Line Color( 3 )}, Item ID( "MZ2_L", 1 ) ),
Properties( 11, {Line Color( 3 ), Line Style( "Dashed" )}, Item ID( "MZ2_R", 1 ) ),
Properties( 12, {Line Color( 0 )}, Item ID( "MZ3_L", 1 ) ),
Properties( 13, {Line Color( 0 ), Line Style( "Dashed" )}, Item ID( "MZ3_R", 1 ) ),
Properties( 14, {Line Color( 9 )}, Item ID( "MZ4_L", 1 ) ),
Properties( 15, {Line Color( 9 ), Line Style( "Dashed" )}, Item ID( "MZ4_R", 1 ) )
)}
)
)
)
);
);
);回复:将图表附加到新窗口中这是样本。 谢谢。
回复:将图表附加到新窗口中如果您附上一些示例数据,我会看一下。 我使用的方法是经过测试的方法,我怀疑有一些小问题。回复:将图表附加到新窗口中你好。特克斯尼尔森
感谢您的快速回复,但它不起作用。 现在它不会在新窗口中添加任何内容,并且对于每个图表,我都有 2 个图。回复:将图表附加到新窗口中试试这个......我没有数据来测试这个,但是,移动附加以包含实际平台,应该为您提供本地数据过滤器。
New Window( "Plot", tb = Tab Box() );
For( i = 1, i <= N Items( list ), i++,
tb << append(
obj = Graph Builder(
Size( 1122, 1095 ),
Variables(
X( :sequence ),
Y( :Data ),
Group X( :Source Table ),
Group X( :SERIAL_NO ),
Group Y( :Group ),
Overlay( :Label )
),
Elements( Line( X, Y, Legend( 10 ) ) ),
Local Data Filter(
Add Filter(
columns( :Source Table ),
Where( :Source Table == list[i] ),
Display( :Source Table, Size( 181, 34 ), List Display )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Line Style( "DashDot" )}, Item ID( "CTAP1", 1 ) ),
Properties( 1, {Line Style( "DashDot" )}, Item ID( "CTAP2", 1 ) ),
Properties( 2, {Line Color( 0 ), Line Style( "DashDot" )}, Item ID( "CTAP3", 1 ) ),
Properties( 3, {Line Color( 9 ), Line Style( "DashDot" )}, Item ID( "CTAP4", 1 ) ),
Properties( 4, {Line Style( "Dotted" )}, Item ID( "Inline_X", 1 ) ),
Properties( 5, {Line Style( "Dotted" )}, Item ID( "Inline_Y", 1 ) ),
Properties( 8, {Line Color( 5 )}, Item ID( "MZ1_L", 1 ) ),
Properties( 9, {Line Color( 5 ), Line Style( "Dashed" )}, Item ID( "MZ1_R", 1 ) ),
Properties( 10, {Line Color( 3 )}, Item ID( "MZ2_L", 1 ) ),
Properties( 11, {Line Color( 3 ), Line Style( "Dashed" )}, Item ID( "MZ2_R", 1 ) ),
Properties( 12, {Line Color( 0 )}, Item ID( "MZ3_L", 1 ) ),
Properties( 13, {Line Color( 0 ), Line Style( "Dashed" )}, Item ID( "MZ3_R", 1 ) ),
Properties( 14, {Line Color( 9 )}, Item ID( "MZ4_L", 1 ) ),
Properties( 15, {Line Color( 9 ), Line Style( "Dashed" )}, Item ID( "MZ4_R", 1 ) )
)}
)
)
)
);
);