スペースで始まる破線パターン

スペースで始まる破線パターン

私はよく、半分が実線で半分が破線のベクトルを描きます (ベクトルの残りの部分は「見えません」 (以下の MWE を参照))。通常は 2 本の線を別々に描きます (他の方法は知りません)。

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}

\draw[very thin] (0,-1) -- (0,1);
\draw[ultra thick] (-2,0) -- (0,0);
\draw[ultra thick,dashed,->] (0,0) -- (2,0);

\end{tikzpicture}
\end{document}

問題は、2 番目の部分が常に線で始まることですが、スペースで開始したいのです。どうすればいいでしょうか? を使用して新しいスタイルを定義しようとしました\tikzset{mydashed/.style={dash pattern=off 3pt on 3pt}}が、うまくいきません。

教えてください、何をすればいいですか?

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

答え1

shorten <=<length>指定した長さの後に線が描画され始めるように使用できます。

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}

\draw[very thin] (0,-1) -- (0,1);
\draw[ultra thick] (-2,0) -- (0,0);
\draw[ultra thick,dashed,->,shorten <=3] (0,0) -- (2,0);

\end{tikzpicture}
\end{document}

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

答え2

最初の部分をスキップするようにダッシュ パターンをシフトできますon。ダッシュ パターンの定義については、tikz.code.texファイルを検索してください。クイック リファレンス:

\tikzstyle{dashed}=                  [dash pattern=on 3pt off 3pt]
\tikzstyle{densely dashed}=          [dash pattern=on 3pt off 2pt]
\tikzstyle{loosely dashed}=          [dash pattern=on 3pt off 6pt]

まず、ダッシュパターンを3ptまたは-3pt、あるいはその倍数にシフトする必要があります。その後mydashed

\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[mydashed/.style={dashed,dash phase=3pt}]
\draw[very thin] (0,-1) -- (0,1);
\draw[ultra thick] (-2,0) -- (0,0);
\draw[ultra thick,mydashed,->] (0,0) -- (2,0);
\draw[solid,mydashed,->] (0,-0.5) -- (2,-0.5);
\draw[ultra thin,mydashed,->] (0,-0.25) -- (2,-0.25);
\end{tikzpicture}
\end{document}

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

結合されたベクトルを一度に描画するには、必要に応じて装飾を使用できます。ベクトルの破線部分が常にわかっている場合 (パーセンテージなど)、これは比較的簡単です。そうでない場合は、多少の作業が必要になる場合があります。

答え3

いくつかの調整dash pattern:

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}

\draw[very thin] (0,-1) -- (0,1);
\draw[ultra thick] (-2,0) -- (0,0);
\draw[ultra thick,dash pattern=on 0pt off 3pt on 3pt off -1pt,->] (0,0) -- (2,0);

\end{tikzpicture}
\end{document}

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

答え4

まさにこの目的のためのキーがありますdash phase。 は、指定された値でダッシュパターンを単純にシフトします。マニュアルの例:

\begin{scope}[dash pattern=on 20pt off 10pt]
\draw[dash phase=0pt] (0pt,3pt) -- (3.5cm,3pt);
\draw[dash phase=10pt] (0pt,0pt) -- (3.5cm,0pt);
\end{scope}

TikZマニュアルから抜粋した例

この MWE に適用:

\documentclass[tikz]{standalone}

\begin{document}
 \begin{tikzpicture}
  \draw[very thin] (0,-1) -- (0,1);
  \draw[ultra thick] (-2,0) -- (0,0);
  \draw[ultra thick,dashed,->, dash phase=3pt] (0,0) -- (2,0);
 \end{tikzpicture}
\end{document}

MWEにダッシュフェーズを適用

関連情報