将 URL 中的 PNG 图像显示到晶圆图中你好,
我想查看 CSV 文件中的晶圆图...好的

但我会用定义到同一个 CSV 文件中的 URL 中的 PNG 图像替换每个方块...
你有一些想法怎么做吗???
高级统计建模消费者和市场研究数据存取数据探索和可视化回复:将 URL 中的 PNG 图像显示到晶圆图中你好,约翰,
多谢 !! 太棒了!
非常感谢 Jthi,您的帮助和 JMP > v16 的解决方案
以下 JMP v15 的解决方案
圣诞节快乐
泽维尔

脚本 JMP V15:
// JMP V15
Names Default To Here(1);
dt = Open(
"$DOWNLOADS/pokemons/Wafermap_pokemon.csv",
Import Settings(
End Of Line(CRLF, CR, LF),
End Of Field(Comma, CSV(1)),
Strip Quotes(0),
Use Apostrophe as Quotation Mark(0),
Use Regional Settings(0),
Scan Whole File(1),
Treat empty columns as numeric(0),
CompressNumericColumns(0),
CompressCharacterColumns(0),
CompressAllowListCheck(0),
Labels(1),
Column Names Start(1),
Data Starts(2),
Lines To Read("All"),
Year Rule("20xx")
)
);
dt:XCoord << Data type(Numeric) << Set Modeling Type(Ordinal);
dt:YCoord << Data type(Numeric) << Set Modeling Type(Ordinal);
// reduce Filename to only filename OR use full filepath and modify Images column's formula
dt:Filename << Set Each Value(Word(-1, :Filename, "\"));
Show(Get Default Directory());
// This can be modified to get borders and so on if needfed
dt << New Column("Images", Expression, None, << Set Each Value(
Open(Get Default Directory() ||"images/" || :Filename, png);
));
:Images << Set Use For Marker;
gb = dt << Graph Builder(
Size( 522, 451 ),
Show Control Panel( 0 ),
Variables( X( :XCoord ), Y( :YCoord ) ),
Elements( Points( X, Y, Legend( 1 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Marker Size( 15 ), Marker Drawing Mode( "Normal" )}
)
)
);回复:将 URL 中的 PNG 图像显示到晶圆图中你好@BiX ,
我展示的示例适用于 Big Class Families.jmp 示例数据集。 “身高”、“体重”和“图片”是该数据集中的列,但不在您在脚本中创建的表中。
要在脚本中使用“设置用于标记”,您需要将“设置用于标记”消息发送到您在图形生成器函数之前在脚本中创建的“图像”列。
为此,请替换以“height = 20;”开头的所有内容到最后如下:
:Images << Set Use For Marker;
gb = dt << Graph Builder(
Size( 522, 451 ),
Show Control Panel( 0 ),
Variables( X( :XCoord ), Y( :YCoord ) ),
Elements( Points( X, Y, Legend( 1 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Marker Size( 15 ), Marker Drawing Mode( "Normal" )}
)
)
);
请注意,我添加回了 SendToReport 代码,将标记大小设置为本文前面的 15。如果更改图表的大小,您可能也需要更改标记大小。
请告诉我们这对您来说效果如何。
谢谢,
〜约翰
回复:将 URL 中的 PNG 图像显示到晶圆图中谢谢约翰,
我尝试将您的建议放入 Jthi 的脚本中,但没有成功......
请您向我建议您的更新吗?
基因组
”
名称默认为此处(1);
dt = 打开(
“$DOWNLOADS/pokemons/Wafermap_pokemon.csv”,
导入设置(
行尾(CRLF、CR、LF)、
字段结束(逗号,CSV(1)),
剥离报价(0),
使用撇号作为引号(0),
使用区域设置(0),
扫描整个文件(1),
将空列视为数字(0),
压缩数字列(0),
压缩字符列(0),
压缩允许列表检查(0),
标签(1),
列名开始(1),
数据开始(2),
要读取的行(“全部”),
年份规则("20xx")
)
);
dt:XCoord << 数据类型(数值) << 设置建模类型(序数);
dt:YCoord << 数据类型(数值) << 设置建模类型(序数);
// 将文件名减少为仅文件名或使用完整文件路径并修改图像列的公式
dt:文件名 << 设置每个值(Word(-1, :文件名, "\"));
Show(获取默认目录());
// 如果需要的话可以修改它来获取边框等
dt << 新列("图像", 表达式, 无, << 设置每个值(
打开(获取默认目录()||“图像/”||:文件名,png);
));
高度=20;
重量=20;
gb = dt << 图形生成器(
尺寸(522, 451),
显示控制面板(0),
变量(X(:X坐标),Y(:Y坐标)),
:图像 << 设置标记用途;
双变量( Y(:身高),X(:体重) );
双变量[]
);
”
回复:将 URL 中的 PNG 图像显示到晶圆图中@jthi有一个好的建议。根据脚本索引,在 JMP 14 中实现了设置标记的用途:

第一次使用某个函数时,最好在“帮助”菜单下的“脚本索引”中查找它。
您可能还想在脚本编辑器中打开嵌入式日志(右键单击 > 显示嵌入式日志),以便在运行脚本时可以看到错误。

希望这可以帮助,
〜约翰
回复:将 URL 中的 PNG 图像显示到晶圆图中我不确定它何时实现(我正在使用 JMP16)。 您可以尝试使用我在本线程的第一条消息中建议的“图像”列作为“标记”列。 希望这能起作用(在这种情况下,我认为你必须从图形生成器中删除该部分)。
回复:将 URL 中的 PNG 图像显示到晶圆图中嗨,Jthi,
再次感谢。
抱歉,我总是用点或圆圈代替口袋妖怪图像。
我怀疑“设置形状列(:图像))”命令在我这边不起作用? (在V15.0.0或V15.2.1中)

回复:将 URL 中的 PNG 图像显示到晶圆图中图形生成器可能是根据错误的数据表绘制的。 基于窗口名称:图形生成器正在使用表 Wafermap_pokemon_2,可见的数据表是 Wafermap_pokemon_2 2 )。 也许 Wafermap_pokemon_2 数据表没有正确设置 Image 列?
回复:将 URL 中的 PNG 图像显示到晶圆图中嗨,Jthi,感谢您的帮助。
但我得到的是圆圈而不是口袋妖怪图像....要更改的图形参数?
回复:将 URL 中的 PNG 图像显示到晶圆图中将文件名列保留为字符。 我还建议使用图像的完整路径,因为这样可以更轻松地加载图像(如果您不能这样做,那么使用 Get Default Directory() 或 Convert File Path() 来构建图像加载列可能是最简单的)。 此外,使用图像作为标记将使它们(很可能)依赖于图形大小和使用的标记大小。 如果所有图像的大小相同并且您不需要图形生成器,则也可以选择构建自定义显示。
我的图像、csv 和图像位于 Downloads/pokemons 文件夹中

我在脚本中对路径进行了一些路径清理
查看更多...
Names Default To Here(1);
dt = Open(
"$DOWNLOADS/pokemons\Wafermap_pokemon_2.csv",
Import Settings(
End Of Line(CRLF, CR, LF),
End Of Field(Comma, CSV(1)),
Strip Quotes(0),
Use Apostrophe as Quotation Mark(0),
Use Regional Settings(0),
Scan Whole File(1),
Treat empty columns as numeric(0),
CompressNumericColumns(0),
CompressCharacterColumns(0),
CompressAllowListCheck(0),
Labels(1),
Column Names Start(1),
Data Starts(2),
Lines To Read("All"),
Year Rule("20xx")
)
);
dt:XCoord << Data type(Numeric) << Set Modeling Type(Ordinal);
dt:YCoord << Data type(Numeric) << Set Modeling Type(Ordinal);
// reduce Filename to only filename OR use full filepath and modify Images column's formula
dt:Filename << Set Each Value(Word(-1, :Filename, "\"));
Show(Get Default Directory());
// This can be modified to get borders and so on if needfed
dt << New Column("Images", Expression, None, << Set Each Value(
Open(Get Default Directory() ||"images/" || :Filename, png);
));
gb = dt << Graph Builder(
Size(522, 451),
Show Control Panel(0),
Variables(X(:XCoord), Y(:YCoord)),
Elements(Points(X, Y, Legend(3), Set Shape Column(:Images))),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Marker Size(15), Marker Drawing Mode("Normal")}
)
)
);
dt << New Column("ImagesWithBorder", Expression, None, << Set Each Value(
Local({bb, img},
bb = Border Box(Left(15, Empty()), Right(15, Empty()), Top(15), Bottom(15),
img = Picture Box(Open(Get Default Directory() ||"images/" || :Filename, png))
);
bb << Background Color("Orange");
img << Background Color("White");
bb << Get Picture;
);
));
gb = dt << Graph Builder(
Size(457, 714),
Show Control Panel(0),
Variables(X(:XCoord), Y(:YCoord)),
Elements(Points(X, Y, Legend(3), Set Shape Column(:ImagesWithBorder))),
SendToReport(Dispatch({}, "Graph Builder", FrameBox, {Marker Size(30), Marker Drawing Mode("Normal")}))
);
数据表:

无边框且标记大小为 15

边框和标记尺寸 30:

如果我修改图形大小,标记大小将无法跟上:

回复:将 URL 中的 PNG 图像显示到晶圆图中尝试这个:
导入带有 X/Y 数据和文件路径的 csv 文件后,使用来自
https://community.jmp.com/t5/Discovery-Summit-Americas-2020/Images-in-Data-Tables-and-lated-JSL-Tools-2020-US-30MP-585/ta-p/281528
通过点击

最后一步:生成 GraphBuilder 图形并通过以下方式加载图像:

回复:将 URL 中的 PNG 图像显示到晶圆图中嗨,jthi,
当我执行脚本时,我没有获得包含所有 Pokemon 图像的晶圆图......
回复:将 URL 中的 PNG 图像显示到晶圆图中是什么给您带来了问题? 您是否已成功将图像正确地添加到数据表中?
回复:将 URL 中的 PNG 图像显示到晶圆图中Desole 是我的首次亮相,不重复,有 meme 和 vos conseils,一个实现图,有图像和 csv 文件。我希望你能帮助我。提前表示感谢

回复:将 URL 中的 PNG 图像显示到晶圆图中谢谢,谢谢你的提议。我是论文作者。
我可以在桌子上的汽车上使用图像,但不能使用 chemin 类型窗口的 URL 格式(例如://server.com/directory/image.png)
如果您在 JMP 数据库中提出了图像关联代码的命题...我很感兴趣。
谢谢
回复:将 URL 中的 PNG 图像显示到晶圆图中要将图像用作数据点的形状,您还可以通过指定列设置形状列在 GraphBuilder 命令中。
或者稍后,右键单击 GraphBuilder 窗口并从那里选择 Set Shape Column ...。
这允许对不同的图使用不同的列 - 并有一些带有标准标记的图。

这里解释了将图像放入数据表的好方法:
https://community.jmp.com/t5/Discovery-Summit-Americas-2020/Images-in-Data-Tables-and-lated-JSL-Tools-2020-US-30MP-585/ta-p/281528
如果链接在一列中列出,只需单击一下 (Imagetable_Import_Images),它们就会自动加载。
Open( "$SAMPLE_DATA/Big Class Families.jmp" );
New Column( "X", Numeric, "Continuous", Format( "Best", 12 ), Formula( Mod( Row() - 1, 7 ) ), Set Selected );
New Column( "Y", Numeric, "Continuous", Format( "Best", 12 ), Formula( Floor( (Row() - 1) / 7 ) ), Set Selected );
Graph Builder(
Size( 511, 500 ),
Show Control Panel( 0 ),
Variables( X( :X ), Y( :Y ) ),
Elements( Points( X, Y, Legend( 3 ), Set Shape Column( :picture ) ) ),
Dispatch( {}, "400", ScaleBox, {Legend Model( 3, Properties( 0, {Marker Size( 10 )}, Item ID( "Y", 1 ) ) )} )
)回复:将 URL 中的 PNG 图像显示到晶圆图中向图片添加文本可能会给你一些想法。
JMP 具有三种思考图像的方法。
- 将图像放入图表中,使用 X 轴和 Y 轴进行定位和缩放,并使用图像的顺序来确定顶部的内容。
- 使用图像函数加载、裁剪和调整图像对象的大小(完成后可以保存为 PNG 或 JPG。)
- 将图像对象移动到矩阵中并使用矩阵运算来操纵像素。 返回到图像对象以保存图片。
如果您已经在构建图表,则需要使用 (1)。 看看第二个答案,在这里:
// you could use a loop to add a bunch of images to the framebox
// <<ADDIMAGE adds="" at="" the="" front="" of="" the="" display="" list.="" the="" first=""></ADDIMAGE>
回复:将 URL 中的 PNG 图像显示到晶圆图中您可以尝试使用图像作为标记使用 JMP > JMP 报表 > 在图形中使用标记 > 使用图像作为标记在数据表中有图像之后。 如何获取这些图像很大程度上取决于您的网址如何工作。 您也许可以将表达式列与 Open(url) 等公式一起使用。 获得正确的尺寸可能需要一些修改。
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(1),
New Column("url",
Character,
"Nominal",
Set Values(
{
"https://www.jmp.com/en_us/download-jmp-free-trial/_jcr_content/par/contenttargetingcont/par_off/styledcontainer_cdbe/par/image_f589.img.png/1520449222936.png"
}
)
),
New Column("Column 2", Expression, "None", Formula(Open(:url)), Use for Marker)
);
gb = dt << Graph Builder(
Size(496, 466),
Show Control Panel(0),
Variables(X(:url)),
Elements(Points(X, Legend(2)))
);
如果图像已经下载过一次,那么防止再次下载图像也是一个好主意