bal*_*boa 36 wolfram-mathematica
我试着用它.这对于一些Plots来说真的很不错,但是当它以三角形为例时我发现它非常复杂.我想出了如何绘制三角形,但如何添加角度标记,那些曲线?
因为我刚开始从事这项工作,写一本书,任何人都可以推荐我,这是获得好看图形的最佳方法,例如如下图所示.哪种程序最好用.

感谢您提出任何建议和意见.
Arn*_*ing 19
这是第一个执行第一个的简单/基本方法:
Graphics[{
(* The dashed circle segment *)
{
Dashing[{.04, .01}],
Darker[Orange],
AbsoluteThickness[2],
Circle[{0, 0}, 1, {1, 2 \[Pi]}]
},
(* The solid circle segment *)
{
Orange,
AbsoluteThickness[2],
Circle[{0, 0}, 1, {0, 1}]
},
(* The radial lines and the small circle segment *)
Line[{{0, 0}, {1, 0}}],
Line[{{0, 0}, {Cos[1], Sin[1]}}],
Circle[{0, 0}, .2, {0, 1}],
(* Various text labels *)
{
Text[Style["\[Theta]", 24], .3 {Cos[.5], Sin[.5]}],
Text[Style["s", 24], 1.1 {Cos[.5], Sin[.5]}],
Text[Style["r", 24], {.5, -.1}]
}
}]
Run Code Online (Sandbox Code Playgroud)

以下是完全相同的事情,但在Manipulate角度包装和参数化alpha:
Manipulate[
Graphics[{
{Dashing[{.04, .01}], Darker[Orange], AbsoluteThickness[2],
Circle[{0, 0}, 1, {\[Alpha], 2 \[Pi]}]},
{Orange, AbsoluteThickness[2], Circle[{0, 0}, 1, {0, \[Alpha]}]},
Line[{{0, 0}, {1, 0}}],
Line[{{0, 0}, {Cos[\[Alpha]], Sin[\[Alpha]]}}],
Circle[{0, 0}, .2, {0, \[Alpha]}],
{Text[Style["\[Theta]",
24], .3 {Cos[\[Alpha]/2], Sin[\[Alpha]/2]}],
Text[Style["s", 24], 1.1 {Cos[\[Alpha]/2], Sin[\[Alpha]/2]}],
Text[Style["r", 24], {.5, -.1}]}
}],
{{\[Alpha], 1}, 0, 2 \[Pi]}]
Run Code Online (Sandbox Code Playgroud)
如果移动滑块,内容将相应更改:

Sza*_*lcs 14
编辑你也可以从Demonstrations项目中获得灵感. 这些是与三角相关的演示. 快速浏览后,我认为你应该看看Jay Warendorff的几何相关演示.他已经做了很多这些,他们使用了一组结构化的几何相关函数,你最有可能重用它们.
这是一个angleArc让你入门的功能.这只是您可以使用的辅助函数的一个小例子,还有很大的改进空间.
angleArc[Polygon[vertices_List, ___], r_, i_] :=
Module[{a, b, c, phi1, phi2},
{a, b, c} = Take[RotateLeft[vertices, i-2], 3];
{phi1, phi2} = Sort@N[{ArcTan @@ (a - b), ArcTan @@ (c - b)}];
If[phi2 - phi1 > Pi, phi1 += 2 Pi];
Circle[b, r, {phi2, phi1}]
]
poly = Polygon[{{0, 0}, {1, 2}, {2, 1}}];
Graphics[{EdgeForm[Thick], FaceForm[None], poly,
Table[angleArc[poly, .2, i], {i, Length[poly[[1]]]}]}]
Run Code Online (Sandbox Code Playgroud)

Manipulate[
With[{poly = Polygon[{a, b, c}]},
Graphics[
{EdgeForm[Thick], FaceForm[None], poly,
Table[angleArc[poly, .2, i], {i, Length[poly[[1]]]}]},
PlotRange -> 2 {{-1, 1}, {-1, 1}}, Frame -> True
]
],
{{a, {0, 0}}, Locator}, {{b, {1, 0}}, Locator}, {{c, {0, 1}}, Locator}
]
Run Code Online (Sandbox Code Playgroud)

Geometricta支持的一款出色的Wolfram产品.它不是一个便宜的附加装置,价格为495美元,但它会比你在原始MMA Mathematica中制作的图表容易得多.它基本上是评论中Szabolcs方法的一个非常大的扩展 - 一个绘制东西的函数库.
是的,Mathematica的内置图形工具在某些地方有点古怪,并且有一些恼人的遗漏.但是有很多基本的图形,而且从好的方面来说,你只需要几次击键就可以找到纠正图形编辑器某些缺陷所需的数学工具.需要弧线?只需在下面计算并复制/粘贴即可.使用Adobe Illustrator无法做到这一点!方程式和希腊字符也可以广泛使用.没有别的东西可以帮助它.
这是第一个 - 这不是完全不可接受的...... :)

演示是MMA编写的优秀且低成本(50美元)的图形(以及更多)包,由David Park编写. http://home.comcast.net/~djmpark/DrawGraphicsPage.html
它在我们的stackoverflow工具包中被称为资源n.2 .您的Mathematica工具包中有什么?