首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在mathematica中漂亮地打印出一个矩阵

在mathematica中漂亮地打印出一个矩阵
EN

Stack Overflow用户
提问于 2011-02-11 13:45:30
回答 2查看 3.2K关注 0票数 8

我在mathematica中有一个列表(矩阵)列表。我想把它很好地打印出来,每一行的最大值都是粗体。该怎么做呢?

或者甚至更远,在这样的max之外有一个圆,这是可能的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-11 14:32:31

您可以使用MatrixForm很好地打印矩阵:

代码语言:javascript
运行
复制
data = RandomInteger[100, {5, 5}];

data // MatrixForm

收益率

您可以在每行中的最大值周围绘制一个圆圈,如下所示:

代码语言:javascript
运行
复制
Map[# /. m : Max[#] :> Framed[m, RoundingRadius -> 1000]  &, data] //
  MatrixForm

让位

RoundingRadius -> 1000使用一个大得离谱的参数来获取圆。您可能需要根据显示器的大小调整常量。

如果你喜欢加粗,你可以用Style[m, Bold]修改Framed[m...]

票数 19
EN

Stack Overflow用户

发布于 2011-02-11 19:36:39

栅格使您可以在显示外观上进行细粒度控制。例如:

代码语言:javascript
运行
复制
g[a_] := Grid[a,
  Background -> {None, {{LightBlue, LightRed}}},
  Dividers -> {False, All},
  ItemStyle -> {Automatic, Automatic, 
    MapIndexed[Flatten@{#2, Ordering[#1, -1]} -> {Bold, Red} &, a]}]

g[RandomInteger[100, {10, 7}]]  

NB>它将每行只突出显示一个元素

编辑

要高亮显示每个max元素,可以执行以下操作:

代码语言:javascript
运行
复制
g[a_] := Grid[a,
  Background -> {None, {{LightBlue, LightRed}}},
  Dividers -> {False, All},
  ItemStyle -> {Automatic, Automatic, 
    Flatten[Tuples[{First@#, Last@#}] & /@ 
       MapIndexed[{#2, Position[#1, Max[#1]]} &, a], 
      1] /. {q_, {r_}} -> ({q, r} -> {Red, Bold})}]  

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4966007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档