簡體   English   中英

TikZ:按角度填充陰影顏色的圓圈

[英]TikZ: Fill a circle with shading color by angle

目標:畫一個半圓並用隨角度變化的漸變線顏色填充它。 例如,從 θ=0 到 θ=π 的角度,預期填充顏色從紅色變為藍色。

在 tikz 手冊( https://tikz.dev/library-shadings )中,着色模式在以下方面不能滿足我的需求:

  1. 選項shading = color wheel似乎只適用於圓形而不是半圓形。

  2. 選項shading = color wheel在原點呈現扭曲的顏色,而shading=color wheel white center在原點填充白色區域。

  3. color whell看起來不是真正的線漸變。

那么,有沒有什么辦法可以通過角度來制作一個理想的半圓,並用線漸變顏色填充呢?


可以在此處看到類似的示例,但需要進行一些更改:

  1. 預計它是半圓形而不是象限。

  2. 填充的顏色最好是根據角度(或其余弦)漸變。


我嘗試了以下代碼,但漸變圖案似乎不太明顯,而且來源很詭異。

\documentclass[tikz, margin=5pt]{standalone}

\usepackage{tikz}
\usetikzlibrary{shadings}

\begin{document}

\begin{tikzpicture}
    \clip (0, 0) -- (1, 0) arc [start angle=0, end angle=180, radius=1cm] -- cycle ;
    \shade[shading=color wheel, shading angle=-60] (0, 0) circle (1cm) ;
\end{tikzpicture}

\end{document}

我建議使用pgfplots ,然后您可以最大程度地控制色階:

\documentclass[tikz, margin=5pt]{standalone}

\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}

\begin{tikzpicture}
\begin{axis}[
    axis equal=true,
    hide axis,     
    domain=0:180,
    domain y=0:1,
    view={0}{90},
    shader=interp,
    colormap={redblue}{
        color=(red)  color=(blue)
    },
    data cs=polar,
]
    \addplot3 [surf] {x};
\end{axis}
\end{tikzpicture}

\end{document}

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM