标签: mathematica-8

Mathematica,FrameTicks在不同类型的情节中不一致

在进一步开发早期问题的解决方案时,我遇到了一些意想不到的不一致:

如何在绘图的y轴上显示%值?

这似乎有点不同,值得一篇新帖子.

从相同的数据开始:

data = {{{2010, 8, 3}, 
0.}, {{2010, 8, 31}, -0.052208}, {{2010, 9, 30}, 
0.008221}, {{2010, 10, 29}, 0.133203}, {{2010, 11, 30}, 
0.044557}, {{2010, 12, 31}, 0.164891}, {{2011, 1, 31}, 
0.055141}, {{2011, 2, 28}, 0.114801}, {{2011, 3, 31}, 
0.170501}, {{2011, 4, 29}, 0.347566}, {{2011, 5, 31}, 
0.461358}, {{2011, 6, 30}, 0.244649}, {{2011, 7, 29}, 
0.41939}, {{2011, 8, 31}, 0.589874}, {{2011, 9, 30}, 
0.444151}, {{2011, 10, 31}, 0.549095}, {{2011, 11, 30}, 
0.539669}};
Run Code Online (Sandbox Code Playgroud)

我定义了一种方法,可以FrameTicks根据上一篇文章中提供的贡献和见解建立百分比:

myFrameTicks = 
Table[ …
Run Code Online (Sandbox Code Playgroud)

plot wolfram-mathematica mathematica-8

3
推荐指数
1
解决办法
952
查看次数

如何使用Mathematica按每个列表的元素总和对N个列表进行排序?

给定一个包含k子列表的列表,让 A={{a1,a2,a3,...},{b1,b2,b3,...},...}我想按照它们对这些子列表进行排序Total[A[i]].有没有有效的方法来做到这一点?

sorting wolfram-mathematica list mathematica-8

3
推荐指数
1
解决办法
457
查看次数

使用Mathematica在N个列表中查找具有相同长度的最大列表的任何有效简便方法?

这个问题是前一个线程的延续,用于比较具有相同长度的两个列表:

有没有有效的简单方法来比较Mathematica相同长度的两个列表?

鉴于两个列表A={a1,a2,a3,...an}B={b1,b2,b3,...bn},我会说A>=B,当且仅当所有ai>=bi.现在我们有了k列表H={{a11,a12,a13,...a1n}, {a21,a22,a23,...a2n},...,{ak1,ak2,ak3,...akn}},并希望找到最大的列表(如果存在).

这是我的代码:

Do[If[NonNegative[Min[H[[i]] - h]], h = H[[i]], ## &[]], {i, h = H[[1]]; 1, Length[H]}];h

有没有更好的技巧呢?

编辑:

我想将其定义为以下函数:

maxList[H_]:=Do[If[NonNegative[Min[H[[i]] - h]], h = H[[i]], ## &[]], {i, h = H[[1]]; 1, Length[H]}];h

但问题是上面的代码跨越两行,对此有什么解决方法吗?这里有一些代码工作,但不是很漂亮

maxList[H_] := Module[{h = H[[1]]}, Do[If[NonNegative[Min[H[[i]] - h]], h = H[[i]], ## &[]], {i, Length[H]}]; h]

要么

maxList[H_]:=Last[Table[If[NonNegative[Min[H[[i]] - h]], h = H[[i]], ## &[]], {i, h = H[[1]]; 1, Length[H]}]]

arrays wolfram-mathematica list mathematica-8

2
推荐指数
1
解决办法
309
查看次数

目标寻求,在Mathematica

对于实验,我们在Matlab中生成了一些由8个磁盘制成的图像.我们限制了磁盘之间以及磁盘和框架之间的最小距离以及磁盘重心(COG)的位置.贝娄在上部升降机"COG"上用COG组成的一个例子

FraXYs = {{4.32, 3.23}, {35.68, 26.75}}

stiDisks = {{{8, 11}, 1}, {{10, 17}, 1}, {{16, 24}, 1}, {{25, 22},1}, 
           {{31, 22}, 1}, {{7, 21}, 2}, {{16, 12}, 2}, {{19, 22}, 2}}

Graphics[{White, EdgeForm[Thick],
  Rectangle @@ FraXYs,
  Red, Disk[{14.77, 18.91}, 1],
  Blue, Opacity[.6], EdgeForm[Black],
  Blue, Thickness[0.003],
  Opacity[1],
  Black,
  Disk[#[[1]], #[[2]]] & /@ stiDisks}, ImageSize -> {400, 300}]
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我想在Mathematica中产生这些刺激.以下是我正在处理的元素(特征和约束).措施以厘米为单位.形状的重心(COG)定义为磁盘位置的区域.

特点 :

刺激框架: {{xMin,xMin},{xMax,yMax}}

FraXYs = {{4.32, 3.23}, {35.68, 26.75}}
Run Code Online (Sandbox Code Playgroud)

5个小圆盘:半径

rSmall=1
Run Code Online (Sandbox Code Playgroud)

3个大圆盘:半径

rLarge=2
Run Code Online (Sandbox Code Playgroud)

制约因素:

形状边缘之间的最小距离:

minDistSha=1
Run Code Online (Sandbox Code Playgroud)

形状边缘和框架边框之间的最小距离:

minDistFra=1
Run Code Online (Sandbox Code Playgroud)

形状COG距离中心的距离: …

wolfram-mathematica mathematica-8

1
推荐指数
1
解决办法
440
查看次数

如何从一组2D点绘制2D密度图并显示连接这些顶点的网络

我的问题如下.

目的

在平面上绘制一组2D点,其具有用于为每个点提供强度的函数.

fun(x,y):=x+y
Run Code Online (Sandbox Code Playgroud)

另外,我有一个图表连接这些点.我需要在密度图上显示图形,这绝对是必要的.

问题

不知道怎么做.我搜索了一下Mathematica文档,但我找不到多少.

一些笔记

每当有人找到解决方案时,我也有一个问题.如何在密度图上使用图形功能是不可能的?例如,如果我想在顶点上显示标签,是否可以使用某种参数化解决方案.也许我要求太多,这只是一个小小的注意事项,如果花费太多时间就跳过它.

最后的笔记

我需要2D图.不是3D的.只是2D很好.

wolfram-mathematica mathematica-8

1
推荐指数
1
解决办法
864
查看次数

WishartDistribution的Inverse [_]和(_)^( - 1)之间的mathematica差异

有谁知道为什么下面的矩阵随机分布产生不同的图?(这是为使用逆Wishart分布采样的一组10x10矩阵中的第一个单元生成PDF的图表;令人惊讶的是,这些图根据执行矩阵逆的方式而有所不同 - 似乎正确的图是通过Inverse [_]获得,为什么?)

基本代码:

   << MultivariateStatistics`;
   Module[{dist, p, k, data, samples, scale, graphics, distribution},
     p = 10;
     k = 13;
     samples = 500;
     dist = WishartDistribution[IdentityMatrix[p], k];
     (* a samples x p x p array *)
     data = Inverse[#] & /@ RandomVariate[dist, samples];
     (* distribution graphics *)
     distribution[i_, j_] := Module[{fiber, f, mean, rangeAll, colorHue},
       fiber = data[[All, i, j]];
       dist = SmoothKernelDistribution[fiber];
       f = PDF[dist];
       Plot[f[z], {z, -2, 2}, 
        PlotLabel -> ("Mean=" <> ToString[Mean[fiber]]), 
        PlotRange -> All]
       ]; …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica mathematica-8

1
推荐指数
1
解决办法
180
查看次数