プロットに垂直線を追加する方法



How Add Vertical Line Plot

解決:

垂直線を追加する簡単な方法は、エピローグ。

次に例を示します。



f [x _]:=(x ^ 2 z)/((x ^ 2-y ^ 2)^ 2 + 4 q ^ 2 x ^ 2)/。 {y->π/ 15、z-> 1、q->π/ 600} Quiet [maxy = FindMaxValue [f [x]、x] * 1.1] lineStyle = {Thick、Red、Dashed}; line1 = Line [{{π/ 15 + 1 / 50、0}、{π/ 15 + 1/50、maxy}}]; line2 = Line [{{π/ 15-1 / 50、0}、{π/ 15-1 / 50、maxy}}]; Plot [{f [x]、f [π/ 15]、f [π/ 15] / Sqrt [2]}、{x、π/ 15-1 / 20、π/ 15 + 1/20}、PlotStyle- > {自動、ディレクティブ[lineStyle]、ディレクティブ[lineStyle]}、エピローグ-> {ディレクティブ[lineStyle]、line1、line2}]

縦線を追加

警告

として行を追加している間エピローグ(またはProlog)オブジェクトはほとんどの場合機能します。たとえば、データセットの最小値と最大値を自動的に見つけるなど、自動化するとメソッドが簡単に失敗する可能性があります。次の例を参照してください。 赤い縦線がありません$ x = $ 5



data1 = Table [0、{10}]; data2 = {1.、1.、1.1 * ^ 18、1。、6.、1.2、1。、1.、1.、148341。}; [メール保護] {ListPlot [data1、Epilog-> {赤、[メール保護] {{5、[メール保護]}、{5、[メール保護]}}}]、ListPlot [data2、Epilog-> {赤、[メール保護] {{5、[メール保護]}、{5、[メール保護]}}}]}

ここに画像の説明を入力してください

左の場合、最小とデータの最大数は同じであることが判明したため、垂直線には高さがありません。 2番目のケースでは、 Mathematica 自動的に選択されたため、線を引くことができませんPlotRange(選択PlotRange->すべてのヘルプ)。さらに、プロットが動的設定の一部であり、垂直プロット範囲が操作される場合、それに応じて線の端点を更新する必要があり、特別な注意が必要です。

解決

もちろん、これらのケースはすべて処理できますが、より便利で簡単なオプションを使用することもできます。グリッド線:



プロット[{f [x]}、{x、π/ 15-1 / 20、π/ 15 + 1/20}、GridLines-> {{π/ 15 + 1/50、π/ 15-1 / 50} 、{f [π/ 15]、f [π/ 15] / Sqrt [2]}}、PlotRange->すべて]

ここに画像の説明を入力してください

そして極端なデータセットの場合:

[メール保護] {ListPlot [data1、GridLines-> {{{5、Red}}、None}]、ListPlot [data2、GridLines-> {{{5、Red}}、None}]}

垂直グリッド線のある画像の例


1つの方法は使用することですグリッド線:

f [x _]:=(x ^ 2 z)/((x ^ 2-y ^ 2)^ 2 + 4 q ^ 2 x ^ 2)/。 {y->π/ 15、z-> 1、q->π/ 600}プロット[f [x]、{x、π/ 15-.1、π/ 15 + .1}、GridLines-> {{ Pi / 15-1 / 20、Pi / 15 + 1/20}、{f [Pi / 15]、f [Pi / 15] / Sqrt [2]}}、PlotRange-> All、Frame-> True、Axes ->誤り]

Mathematicaグラフィックス


使える表示しますがエピローグの方が優れています。

f [x _]:=(x ^ 2 z)/((x ^ 2-y ^ 2)^ 2 + 4 q ^ 2 x ^ 2)/。 {y->π/ 15、z-> 1、q->π/ 600} plot = Plot [{f [x]、f [π/ 15]、f [π/ 15] / Sqrt [2]}、 {x、π/ 15-.01、π/ 15 + .01}、PlotRange-> {{0、0.26}、自動}]; Show [plot、Graphics [{Black、Line [{{Pi / 15 + 1 / 20、2000}、{Pi / 15 + 1 / 20、9000}}]}]、Graphics [{Black、Line [{{Pi / 15-1 / 20、2000}、{Pi / 15-1 / 20、9000}}]}]]

ここに画像の説明を入力してください