我在脚本中将备用行阴影设置为 1,并且数据表中的行以灰色阴影着色,我想将使用的颜色更改为两种蓝色阴影。 在 jsl.js 中编写此代码的最佳方法是什么?
感谢您花时间提供示例。 这正是我一直在寻找的东西,对于 JSL 编码来说还是个新手。
非常感谢您的帮助。
克雷格.
此代码应该让您了解如何对数据表执行此操作。
dt = New Table( "Test Banding", Add Rows( 4 ),
New Column( "Column 1", Character, "Nominal",
Set Values( {"a", "b", "c", "d", "e"} ) ),
New Column( "Column 2", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [3, 2, 1, 0, -1] ) ),
New Column( "Column 3", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [4, 5, 6, 7, 8] ) )
);
// Create a list of every other row number
gray_rows = {};
for (i = 1, i <= nrows(dt), i+=2,
insertinto(gray_rows, i);
);
// Set every other row to gray
for (i = 1, i <= ncols(dt), i++,
column(dt, i) << Color Cells( {-14803425, gray_rows} );
);

你的问题有点稀疏。如果您询问 TableBox() 那么我确实相信不可能设置行的阴影颜色,只能设置默认的灰色。如果您正在谈论 DataBox() (就像打开“*.jmp”文件时得到的那样),那么您可以将单元格颜色设置为您想要的任何颜色 - 只需在脚本索引。
你好,
我凭直觉和反复试验,用你的脚本将每三行的颜色改为“i+3”而不是“i+2”,以此来着色——我根本不会写脚本。
我有一个表格,其中的测量数据以 3 行一组的形式重复出现。我希望每次对表格中的 3 行进行着色,交替进行:3 行灰色,3 行白色,3 行灰色,3 行白色,以此类推。这样的脚本应该怎么写?
非常感谢你的帮助!
乌列尔
举个例子。
Names Default To Here( 1 );
dt = New Table( "nothing", New Column( "Shaded", Set Values( 1 :: 99 ) ) );
grays = Filter Each( {v, i}, 1 :: N Row( dt ), Mod( Ceiling( i / 3 ), 2 ) );
dt:Shaded << Color Cells( "light gray", grays );