在 Mathematica 中操作自定义表格表示

2024-01-12

考虑以下数据示例:

data ={
       {"a", "b", "c", "d", "e"},
       {1, 2, 3, 4, 5},
       {11, 12, 13, 14, 15}, 
       {21, 22, 23, 24, 25}
      };

以及以下函数来生成自定义表格表示:

(并且您可以参考Mr.Wizard 用于可定制表格表示的广泛解决方案 https://stackoverflow.com/questions/6159392/create-a-function-for-customized-tabular-representation。最终我也会暂时操纵他提供的选项)

DataSampleX[data_, linesNumber_, range1_, range2_, color1_, color2_, color3_] :=

Grid[
 Join[
      {Range[range1, range2]}, {Map[Rotate[Text[#], 90 Degree] &,
       data[[1, range1 ;; range2]]]}, 
       data[[2 ;; linesNumber, range1 ;; range2]]
     ],
       Background    -> {{{{color1, color2}}, {1 -> color3}}},
       Dividers      -> {All, {1 -> True, 2 -> True, 3 -> True,0 -> True}},
       ItemSize      -> {1 -> Automatic, Automatic},
       Alignment     -> Top,
       Frame         -> True,
       FrameStyle    -> Thickness[2],
       ItemStyle     -> {Automatic, Automatic, 
                        {{1, 1}, {1, Length[data]}} ->Directive[FontSize -> 
                        15, Black, Bold]}
    ];

我想使用 Manipulate 或 Dynamic 来使用上述内容显示我的部分数据。 这选择了我想要显示的列的范围、要显示的行数以及颜色。

以下是我未完成的尝试。

PopupMenu[Dynamic[range1], Range[1, Length@data[[1]] - 1, 1]]
PopupMenu[Dynamic[range2], Range[2, Length@data[[1]], 1]]
PopupMenu[Dynamic[linesNumber], Range[2, Length@data[[All, 1]] - 1, 1]]
Dynamic[DataSampleX[data, linesNumber, range1, range2, LightBlue, 
LightGray, LightYellow]]

如何使用设置器来更新颜色值?

是否可以在 Manipulate 窗口中实际使用它?

欢迎任何其他使这种高效看起来不错的建议。

-编辑:由于下面的贝利撒留解决方案,我现在能够做的事情:


尝试类似的方法:

colsel = (#->Graphics[{#, Disk[]},ImageSize -> 15])& /@ColorData[1, "ColorList"];
s[x_] := Style[x, Black, Bold, 12];
ct = ControlType -> PopupMenu;

Manipulate[
 DataSampleX[data, linesNumber, range1, range2, color1, color2, color3],
 Row[{
   Column[{
    Control@{{range1,      1, s@"Range1"}, Range[1, Length@data[[1]] - 1],  ct}, 
    Control@{{range2,      2, s@"Range2"}, Range[2, Length@data[[1]] - 1],  ct}, 
    Control@{{linesNumber, 2, s@"Lines"},  Range[2,Length@data[[All, 1]]-1],ct}}],
   Spacer[20],
   Column[{
     Control@{{color1, colsel[[1, 1]], s@"Color 1"}, colsel, ct}, 
     Control@{{color2, colsel[[2, 1]], s@"Color 2"}, colsel, ct}, 
     Control@{{color3, colsel[[3, 1]], s@"Color 3"}, colsel, ct}}]
 }]]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Mathematica 中操作自定义表格表示 的相关文章

随机推荐

  • ExecutorService 与 Swing 计时器

    我一直在读肮脏的有钱客户 http filthyrichclients org 最近注意到 虽然Java的版本是6 但是并没有提到Concurrent Framework 因此 他们谈论 java util Timer 和 javax sw
  • 如何绑定到用户控件的属性?

    在 Windows 应用商店应用中 您创建一个用户控件来封装和重用代码隐藏和布局 XAML 一个简单的用户控件可能如下所示
  • Android 中的文件浏览器[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • PHP 中的 INET_ATON() 和 INET_NTOA()?

    我想将 IP 地址存储在数据库中 但我还需要在整个应用程序中使用它们 我读到关于使用INET ATON and INET NTOA 在我的 MySQL 查询中 从 IP 地址中获取 32 位无符号整数 这正是我想要的 因为它将比使用 cha
  • 每月累计总数和 Postgresql

    我正在尝试计算 dellstore2 数据库的累计用户数 看看这里的答案和其他论坛 我用了这个 select date trunc month orderdate sum count distinct customerid over ord
  • 无法插入断点。低值地址

    我正在尝试调试这个简单的 C 程序 include
  • Facebook Javascript,如何检测用户是否是我的 Facebook 页面的粉丝?在我的网站上?

    我有以下 JS 代码 该代码的目的是首先获取用户的 facebook id 然后使用 FQL 对照我的页面 ID 检查该 id 并确保该用户是粉丝 我遇到的问题是 代码真正起作用的唯一时间是我使用自己的个人 Facebook 个人资料登录时
  • 具有给定厚度、位置和半径的拉环。 (Java2D)

    我需要画一个具有给定厚度的环 看起来像这样 中心必须是透明的 这样它就不会覆盖之前绘制的形状 或其他戒指 我尝试过这样的事情 g is a Graphics2D object g setColor Color RED g drawOval
  • 验证来自 Spring RESTful 资源服务器的 OAuth 2.0 访问令牌

    我想保护我的 Spring RESTful 后端 一种方法 正确的 是使用 OAuth 2 0 如下所示 http www youtube com watch v 8uBcpsIEz2I http www youtube com watch
  • Android 中按钮的单击和双击

    在我的应用程序中 我有一个按钮 单击和双击按钮后将执行单独的操作 我怎样才能做到这一点 谢谢 嗯 很简单 只需覆盖即可 OnClickListener 的 onClick 方法 public abstract class DoubleCli
  • 使用 Android Jetpack 导航时如何禁用导航图标

    当您向导航架构注册工具栏时 它将创建一个箭头 允许您在您所在的片段上弹出 在一些基本级别的片段上 我不想有汉堡菜单图标或箭头 而是自定义视图对象 如何从视图中禁用后退按钮 我尝试过手动禁用 但很难找到如何使用导航拱门来管理它 val sup
  • 如何访问控制台应用程序中的资源?

    我如何获得访问权限 Properties Resources在控制台应用程序中 这是为了使用解决方案附加的资源文件 Here s exactly what I can see 第一个语法错误不是我关心的 只能使用赋值 调用 自增 自减和新对
  • JavaScriptSerializer 可以排除具有 null/默认值的属性吗?

    我正在使用 JavaScriptSerializer 来序列化一些实体对象 问题是 许多公共属性包含 null 或默认值 有没有办法让 JavaScriptSerializer 排除具有 null 或默认值的属性 我希望生成的 JSON 不
  • 如何使用 sqlite 在 pytest 中启用外键检查

    我有一个 django 项目 其中的测试在我调用时运行py test 但我最近注意到它不检查外键约束 我怎样才能让它检查外键约束 显然 外键约束直到 sqlite 3 才成为可能 https sqlite org foreignkeys h
  • 如何在 OpenGL (ES) 中将非 2 幂纹理显示为精灵而不进行拉伸?

    我想绘制一个任意大小的精灵作为 png 比如说 56 宽 x 30 高之类的完全疯狂的东西 任一维度都不是 2 的幂 另外 我可能想绘制另一个 72 宽 x 33 高的不同精灵 指出这一点是因为这里不接受任何 技巧 我需要处理一般情况 所以
  • 实体框架 6:找不到服务器或无法访问服务器

    我正在跟进 本教程 https msdn microsoft com en us data jj193542 aspx 我正在尝试在 C 控制台应用程序中创建 EF 数据库 但是 即使我完全按照教程中的方式执行所有操作 它也会失败 db B
  • 如何将txt文件中的图像像素转换为十六进制颜色代码?

    如何只保留突出显示的部分 运行它awk在行号大于 1 的每一行打印第三个字段 awk NR gt 1 print 3 YourFile 574E3E 2E67FD 40A254
  • 如何从固定装置远程加载数据

    使用 GAE 上的 Django nonrel 部署后如何将固定装置加载到服务器 我可以通过本地化来完成 python manage py loaddata 夹具名称 但如何在 appspot com 上已部署的应用程序上执行此操作 我相信
  • 如何清理 Rails 中的 sql 片段

    我必须清理 SQL 查询的一部分 我可以做这样的事情 class lt lt ActiveRecord Base public sanitize sql end str ActiveRecord Base sanitize sql AND
  • 在 Mathematica 中操作自定义表格表示

    考虑以下数据示例 data a b c d e 1 2 3 4 5 11 12 13 14 15 21 22 23 24 25 以及以下函数来生成自定义表格表示 并且您可以参考Mr Wizard 用于可定制表格表示的广泛解决方案 https