我用Mma主要解决相对较小的问题.
我也想开始使用它来准备我的演示文稿和文档,但是我很难从嵌入式帮助中学习如何做到这一点,我想其他地方可能会提供一些好的资源.
你知道任何有用的指针(书籍,论文,视频......)吗?
你有一个"技巧袋"在这里张贴?
编辑
到目前为止,这个问题得到了两个答案(@ mzabsky和Mr.Wizard's)虽然两者都很有用,但也许我的担忧更为基础.所以我张贴的一个例子样的事情我不能做(或了解如何辨别别人是怎么做他们).
我从The Mathematica Journal(以下图片左侧的笔记本 - 点击图片查看完整尺寸)中选择了以下示例:
所以,有些问题,只是为了弄清楚我的麻烦:
1)我将文本复制到我右边的.nb,用相同的样式(文本)格式化,但外观不同,所以我猜风格定义不同.如何将样式定义从一个.nb复制到另一个?
2)文本块下面的表格没有附加样式.它是如何格式化的?背景颜色在哪里定义?
我想要指出关于这些问题的阅读(或要观看的视频,或其他什么).我不想让你在这里写下一本关于Mathematica格式的书!
Mac OS X 10.7.2上的Mathematica 8.0.1执行此操作:退出内核并执行
MathieuS[MathieuCharacteristicA[ 1, -(1/4)], -0.25`, 15.707963267948966`]
MathieuS[MathieuCharacteristicA[ 1, -(1/4)], -0.25`, 15.707963267948966`]
(*
5.10119 10^-15
MathieuS[MathieuCharacteristicA[1, -(1/4)], -0.25, 15.708]
*)
Run Code Online (Sandbox Code Playgroud)
也就是说,它第一次对表达式进行数值计算,而第二次返回未评估的表单.
为什么?或者我只是花了太长时间盯着我的屏幕而且做了一些愚蠢的事情?
我主要使用mathematica作为数学工作台,并编写相对较小的ad-hoc程序.然而,我正在设计一个我打算在Mathematica中编程的系统.我需要将数据存储在树中,并搜索和遍历树.虽然我知道如何实现树,但我更喜欢标准的,经过测试的代码.我在Mathematica用户维基上查看了基本数据结构的类型.我没有找到,尽管Mathematica文档中有一个小例子.
现在问我的问题:
是否有可用的数据结构(开源)包?
您在数据结构方面使用了什么方法?逐步开发自己的util包?
(这不是一个问题,只是一个评论.也许......缺乏(大量可用的)开源软件包是Mathematica没有应有的动力的原因.我害怕鸡/蛋问题.)
Leonid在他的书第四章中写道:"......模块,块和With.这些结构在Mathematica Book和Mathematica Help中有详细解释,所以我在这里只会说几句......."
从我所读到的(能够找到)我仍然在黑暗中.对于打包的函数我(简单地)使用Module,因为它可以工作,我知道构造.但它可能不是最好的选择.我(从文档中)不清楚何时,何地或为何使用With(或Block).
我在Mathematica 7中随机绘制了Sin [x]函数,这就是它所显示的:

注意大约可见的缺陷x = -100.
下面是缺陷部分的缩放,清楚地表明Mathematica由于某种原因在这些点之间使用了更低的分辨率:

任何人都知道为什么会这样,为什么只有x = -100?
注意:顺便说一下,Wolfram Alpha也是如此.
我试着用它.这对于一些Plots来说真的很不错,但是当它以三角形为例时我发现它非常复杂.我想出了如何绘制三角形,但如何添加角度标记,那些曲线?
因为我刚开始从事这项工作,写一本书,任何人都可以推荐我,这是获得好看图形的最佳方法,例如如下图所示.哪种程序最好用.

感谢您提出任何建议和意见.
给定Graphics对象,如何确定包含所有图形所需的坐标范围?基本上,我需要的东西像什么Show(默认设置),但我想说明PlotRange,PlotRangePadding并ImagePadding明确.
例如,Show下面两个应该呈现相同
g = Graphics[{Thickness[1], CapForm["Round"], Line[{{0, 0}, {1, 1}}]}];
Show[g]
Show[g, PlotRange -> getPlotRange[g], PlotRangePadding->getPlotRangePadding[g], ImagePadding->getImagePadding[g]]
Run Code Online (Sandbox Code Playgroud)
动机:在这个问题中修复图表
更新:
AbsoluteOptions给我PlotRange但不是其他两个选项.默认情况下,明确指定ImagePadding->Automatic更改外观Automatic.
下面的两张图片显示不同,我不明白为什么
g = Graphics[{Thickness[1], CapForm["Round"], Line[{{0, 0}, {1, 1}}]}];
Show[g]
Show[g, Sequence @@ AbsoluteOptions[Show[g]]]
Run Code Online (Sandbox Code Playgroud)
更新2:一年前提出了类似的问题,没有提出解决方案,也没有像Mathematica 8.0那样修复.总结一下
Show[g]明确的设置,没有办法重现上面的内容PlotRangeImagePadding使用Show[g]Show[g,PlotRange->Automatic] 看起来与众不同 Show[g]AbsoluteOptions可以给错误的结果为PlotRange我需要根据病毒的DNA序列生成随机游走,给出其2k碱基对的碱基对序列.序列看起来像"ATGCGTCGTAACGT".路径应向右转为A,向左转为T,向上转为G,向下转向C.如何为此目的使用Matlab,Mathematica或SPSS?
可以使用以下结构在Mathematica中实现有限形式的Currying:
f[a_][b_][c_] := (a^2 + b^2)/c^2
Run Code Online (Sandbox Code Playgroud)
允许一个人做,例如:
f[4][3] /@ Range@5
Run Code Online (Sandbox Code Playgroud)
{25, 25/4, 25/9, 25/16, 1}
有一个问题:Attributes只适用于第一个(一组)参数.考虑:
ClearAll[f]
SetAttributes[f, HoldAllComplete]
f[a_][b_][c_] :=
{ToString@Unevaluated@a,
ToString@Unevaluated@b,
ToString@Unevaluated@c}
f[2 + 2][ 8/4 ][3 + 5]
Run Code Online (Sandbox Code Playgroud)
{"2 + 2", "2", "8"}
我的意图是返回"8 / 4",并"3 + 5"在列表中.
所以:
有没有办法将属性扩展到此构造?
是否有其他方便的结构来实现这一目标?
除了属性之外,还有其他方法可以扩展Mathematica中的Currying吗?
有没有我可以查看/更改全局快捷方式选项的地方,如Command+ 9(转换为输入样式)?
特别是,我需要一种更快的方法来创建项目符号列表.它是Cell上下文菜单中的"Item"样式,它没有自己的快捷方式.