美文网首页
JMP 画完图如何去除不想要的部分?

JMP 画完图如何去除不想要的部分?

作者: 赖皮姑娘爱吃蛋糕 | 来源:发表于2024-10-19 23:01 被阅读0次

背景

把值域很不同的一些变量的分布放在一张图里,很多分布都看不清楚了:


值域很不同的一些变量的分布(parallel merged)

通过把combine scale设置为parallel independent,每个变量使用独立的y轴,能够清晰的看到每个变量分布,因此也会显示每个变量的y轴信息,如下图红框中的内容:


值域很不同的一些变量的分布(parallel independent)

我不想要红框中的内容,因为我只想用这张图说明这些变量的分布没有很好的正态性,不需要具体的值域信息。

局限

搜遍了配置界面,没有找到在哪里可以关掉它,y轴的配置并不作用于每个变量单独的配置!

解决思路

借助JMP script实现没有可视化配置的操作。

  1. 用Show Tree Structure命令找到不想要的部分
gb = Graph Builder(
    Size( 768, 500 ),
        Variables(
        ... 可视化界面拖好图之后,这部分内容会自动生成
        ),
);
gb << Show Tree Structure;
不想要的内容在结构树中的位置
  1. 删掉不想要的部分
rep = gb << Report;
c = rep[Box(1)][OutlineBox(1)][ListBox(9)][PictureBox(1)][GraphBuilderBox(1)][1][1][1][1][1][1][ParallelScaleBox(1)][GraphBuilderContainerBox(1)][GraphBuilderComponentBox(17)][FrameBox(1)] << Find Seg(ParallelAxisSeg);
c << Show Tree Structure;
c << Delete;

成了!


干干净净的烂正太图

实现细节

思路简单,但是有一个巨大的坑!但也有可能是我第一次写JMP脚本还不够懂它。

在上面的路径中[GraphBuilderBox(1)][1][1][1][1][1][1][ParallelScaleBox(1)]这个部分和Show Tree Structure中的看到的路径其实并不匹配!

在Show Tree Structure中,GraphBuilderBox(1)和[ParallelScaleBox(1)]之间只隔了一个ScaleBox,但是实际上并不是!所以我请ChatGPT帮我写了一个函数把具体的结构打印出来。

// 这个函数有bug,只能打印第一个叶子的路径,并不会返回递归,不知道为啥,但目前将就够用了
print_hierarchy = Function( {box, indent}, 
    Print( Repeat("  ", indent));
    Show(box);

    // Loop through the children of the current box (if it has any)
    n_children = N Items( box );
    For( i = 1, i <= n_children, i++,
        // Recursively call the function on each child component
        child_box = box[i];
        print_hierarchy( child_box, indent + 1 );  // Increase indentation level for children
    );
);

c = rep[Box(1)][OutlineBox(1)][ListBox(9)][PictureBox(1)][GraphBuilderBox(1)];
print_hierarchy(c, 0);

发现竟然有五个ScaleBox,不知道是为什么。


Show Tree Structure中一个ScaleBox竟然嵌套了五个ScaleBox

工具

JMP Script中Print输出在Log,在菜单栏Window中打开。


查看Print输出的内容

脚本函数定义文档


打开脚本函数定义文档

思路延展

能够找到一个部分,就应该能够增删改,那是不是对画图想怎么改就能怎么改了呢……

碎碎念

超级开心我的机灵又回来了。以前问过一个物理学家怎么学好数学,他说提问,然后解决它。那之后我就格外珍惜自己提出的问题。

相关文章

  • 可视化

    可视化 cpm 去除文库大小的影响 pca图 画热图 火山图 拼图 patchwork包只能用来拼ggplot2画...

  • 2018-07-25

    画完这幅导图感觉还是有些不舒展,没有完全发散,不流畅。

  • 心蓝彩铅训练营第1期作品—花船

    成品图! 这幅线稿个人觉得最难的部分,就是那娇艳层叠翻卷的两朵花,搞不懂层次画不出轮廓! 画完...

  • 如何画一张思维导图

    画完如何画思维导图的思维导图(!),发现自己还不够高度概括和清晰。 思维导图关键点有3个,一是结构,从粗到细的分支...

  • 水彩画 猫先生

    画了好几天的猫先生,今天终于完成了! 拍了几张过程图: 小猫的眼睛画错了,我拍越画越难看,就没继续画。 水彩部分完...

  • 视频绿幕抠图教程

    视频或照片中使用绿幕去遮住你不用的部分,留下你想要的部分再进行制作。称绿幕抠图。比如你要去除一张照片的背景,留下人...

  • 欧佩:痘印应该如何去除?

    有部分人在脸上长了痘痘自愈后,会在脸上留下痘印,想要解决但却不知道如何处理这些痘印。那么,这些痘印应该如何去除呢?...

  • 流程图该如何绘制

    流程图该如何画,其实画流程图是比较简单的,只是设计比较难,看你想要设计成什么形状的,下面就教大家简单的画下流程图吧...

  • 心蓝手绘挑战营❤第二次作业

    很喜欢裙子这张图,但是自己画完感觉不太满意,褶皱部分处理得不太好,太生硬了(,,•́.•̀,,)

  • 做自己

    刚刚画完的图,欢迎大家指点~

网友评论

      本文标题:JMP 画完图如何去除不想要的部分?

      本文链接:https://www.haomeiwen.com/subject/tirhdjtx.html