graphics - 如何绘制在 Mathematica 中易于修改和简单完成的分岔图?
问题描述
我有很多分岔图要做,所以我想做一些可以轻松修改的事情。随附的代码是初步尝试。
p1 = Plot[{Sqrt[a], -Sqrt[a]}, {a, -3, 6}];
horiz = Graphics@
Line[ {{-3, 2}, {6, 2}} ];(*horizontal line at y=2 *)
horiz2 = Graphics@
Line[ {{-3, -2}, {6, -2}} ];(*horizontal line at y=2 *)
vertm = Graphics@
Line[ {{-1, -2}, {-1, 2}} ];(*vertical line at a=-1 *)
vert0 = Graphics@
Line[ {{ 0, -2}, {0, 2}} ];(*vertical line at a=0 *)
vert1 = Graphics@
Line[ {{ 1, -2}, {1, 2}} ];(*vertical line at a=1 *)
vert2 = Graphics@
Line[ {{ 2, -2}, {2, 2}} ];(*vertical line at a=21 *)
vert3 = Graphics@
Line[ {{ 3, -2}, {3, 2}} ];(*vertical line at a=3 *)
vert4 = Graphics@
Line[ {{ 4, -2}, {4, 2}} ];(*vertical line at a=4 *)
vert5 = Graphics@
Line[ {{ 5, -2}, {5, 2}} ];(*vertical line at a=5 *)
Show[p1, horiz, horiz2, vertm, vert0, vert1, vert2, vert3, vert4, \
vert5]
我希望所有的抛物线都是红色的,而不是蓝色和金色的,并且是粗体的,所以它很突出。最好标记下面的每条垂直线,例如 a=1。你能帮我吗?谢谢你。
真诚的,MM
解决方案
根据您的评论,我认为这更像是您正在尝试做的事情。
verticalLines[xmin_, xmax_, step_] :=
Table[Graphics@{Line[{{x, -2}, {x, 2}}],
Text["a = " <> ToString[x], {x, 2.2}], PointSize[Large],
Point[{x, -2}], Point[{x, 2}]}, {x, xmin, xmax, step}]
p1 = Plot[{Sqrt[a], -Sqrt[a]}, {a, -3, 6},
PlotStyle -> {{Red, Thickness[0.01]}, {Red, Thickness[0.01]}}];
Show[p1, verticalLines[-1, 5, 1]]
推荐阅读
- bash - 从 bash 中的原始数据中提取列表,或者只是格式化输出 list_name 后跟列表内容
- reactjs - React 和 TypeScript - 组件
- objective-c - 为什么我不能访问这个指针的值。目标c
- c# - Selenium C# - Web 元素属性存在但找不到?
- c# - 如何添加不使用属性的服务器端验证规则?
- facebook - 使用带有永久页面访问令牌的 Instagram Graph Api 仅适用于某些帐户
- java - 结合 2 个区间
- sql-server - 创建一个只能通过代码更新的只读列
- python - 只能将 str (不是“字节”)连接到 str
- system-verilog - 我想在系统verilog的函数中反转并返回一个数组,我尝试了下面的代码,但出现以下错误