PGF プロット設定

PGF プロット設定

私はこれを持っていますtikzpicture/ pgfplot(下記参照)。それについていくつか質問があります。

  1. どのようにバツ-ラベル(10 1、10 2など)を上にバツ-軸?
  2. どのように指摘しますかええ-軸を下向きに(下の矢印)?
  3. どのように配置しますかバツ-緑の垂直方向(1591Hz)のラベルですか?
  4. どうすれば追加のチェックマークを付けることができますか?ええラベルのない軸 (例: 単位ごとに目盛り、3 単位ごとにラベル)?
  5. 前の質問の追加のチェックマークを使用して、それらの横にグリッド線を配置するにはどうすればよいですか?
  6. 赤と緑の交差点に点や十字をつけることは可能ですか?
  7. テキストラベルとの交差点を指す矢印を配置することもできますか?
  8. ドメインを1ではなく10から開始したり、を使用するとxmin=10ええ-軸とプロット/グリッド。どうすればこれを回避できますか。このプロットは10 1から始まるようにしたいのですがええ-軸。

よろしくお願いします!

\documentclass{article}
\usepackage{pgf,tikz}
\usepackage{pgfplots}
\begin{document}
\usetikzlibrary{circuits.ee.IEC,graphs,patterns,calc,positioning,intersections,quotes,decorations.markings,angles,bending,arrows.meta,shapes}
\def\dBmax{0}
\def\dBmin{-12}
\def\pi{3.14159}
\def\R{1000}
\def\C{0.0000001}
\def\Fc{1/(2*\pi*\R*\C)}
\pgfplotsset{width=14.5cm,height=6cm}
\begin{tikzpicture}[scale=0.8]
  \begin{axis}[title=$Laagdoorlaatfilter-verzwakking$,
      axis lines=middle,
      ymin=\dBmin,ymax=\dBmax,
      ylabel={$A_v(dB)$},
      ylabel style={at={(ticklabel* cs:1)},anchor=east},
      ytick={-21,-18,...,0},
      xmode=log,
      domain=1:100000,
      xlabel={$f(Hz)$},
      xlabel style={at={(ticklabel* cs:1)},anchor=south},
      xtick style={above=1cm},
      xminorticks=true,
      xmajorticks=true,
      xminorgrids,
      xmajorgrids,
      grid=both,
      samples=100]
    \addplot[no marks, blue] {20*log10(1/sqrt(1+(2*\pi*\R*\C*x)^2))};
%    \addplot+[no marks, green] {20*log10(1/sqrt(1+1/((2*\pi*\R*\C*x)^2)))};
    \addplot+[no marks, red] {-3};
    \addplot+[no marks,green!50!black] coordinates{(\Fc,\dBmax) (\Fc,\dBmin)};
  \end{axis}
\end{tikzpicture}
\end{document}

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

答え1

編集: このように(あなたの質問のほとんどを解決しました...)?

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

(赤い線はテキストの境界線を示します)

\documentclass{article}
\usepackage{siunitx}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\usetikzlibrary{arrows.meta}

\begin{document}
    \begin{tikzpicture}[pin edge={Latex-,black}]
\def\dBmax{0}
\def\dBmin{-12}
\def\pi{3.14159}
\def\R{1000}
\def\C{0.0000001}
\def\Fc{1/(2*\pi*\R*\C)}
\begin{semilogxaxis}[                             % <---
    width=\linewidth,height=6cm,                  % <---
    title=Laagdoorlaatfilter-verzwakking,
    title style = {at={(0.5,1.2)},font=\itshape}, % <---
    axis x line=top,                              % <---
    axis y line=left,                             % <---
    ymin=\dBmin, ymax=\dBmax,
    ylabel={$A_v$ (\si{\decibel})},               % <--- 
    ylabel style={at={(-0.07,0.5)}},              % <---
    ytick={\dBmin,\dBmin+3,...,\dBmax},           % <===
%   ytick={\dBmin,\numexpr\dBmin+3\relax,...,\dBmax}, % alternatively, 
    xlabel={$f$ (\si{\hertz})},
    xlabel style={at={(0.5,1.1)}},
%
    extra x tick style={% changes for x extra ticks % <===
        tick label style={font=\footnotesize,text=green!50!black}, % <===
        grid style={semithick,green},               % <===
                    },
    extra x ticks={1591},                           % <=== 
    extra x tick labels={1591},                     % <===
%
    grid=both,                                       
    minor y tick num=2,                             % <===
    domain=10:100000,                                  
    samples=100,
    no marks]
    \addplot[blue] {20*log10(1/sqrt(1+(2*\pi*\R*\C*x)^2))};
    \addplot[red]  {-3};
    \node[circle,fill, inner sep=1pt,
          pin=45:$f_c$] at (1591,-3) {};            % <===
  \end{semilogxaxis}
\end{tikzpicture}
\end{document}

注記:

  • tikzライブラリは常にドキュメントのプリアンブルでロードされる必要があります
  • pgfplotsロードするtikzので、再度ロードする必要はありません(/again)
  • 拡大縮小図よりも良いのは、例えばテキストの幅と同じ幅に規定することである。

関連情報