改变节点填充颜色的比例

改变节点填充颜色的比例

我有一些像这样的 tikz 代码:

        \tikzset{
            bloc/.style={
                anchor=south west, 
                draw, 
                minimum height=0.7cm, 
                align=left,
                font=\small
            },
        }


\begin{tikzpicture}
    \node[bloc, minimum width=5.5cm, 
          fading transform={xshift=-3cm}, 
          left color=green!60!black!80, 
          right color=red!60]  
    at (-9,0.5) {Initialize process};
\end{tikzpicture}

我想将淡化变换部分更改为具有不同的比例。例如,我希望 80% 的节点为绿色,只有 20% 的节点为红色。但我找不到任何方法来实现这一点。

你有什么建议可以做到这一点吗?

我的最终目标是制定一份路线图并在其上标明已完成或部分完成了多少任务。

完整代码:

\documentclass{article}

\usepackage{tikz}

\begin{document}
    \tikzset{
        bloc/.style={
            anchor=south west, 
            draw, 
            minimum height=0.7cm, 
            align=left,
            font=\small
        },
    }

\begin{tikzpicture}
\node[bloc, minimum width=5.5cm, 
      fading transform={xshift=-3cm}, 
      left color=green!60!black!80, 
      right color=red!60]  
at (-9,0.5) {Initialize process};

\end{tikzpicture}
\end{document}

答案1

使用自定义阴影可以控制颜色的位置:

\documentclass{article}

\usepackage{tikz}

\begin{document}
    \tikzset{
        bloc/.style={
            anchor=south west, 
            draw, 
            minimum height=0.7cm, 
            align=left,
            font=\small
        },
    }



\begin{tikzpicture}
\pgfdeclarehorizontalshading{myshadingA}{3cm}{
    color(0cm)=(green); 
    color(1.44cm)=(green); 
    color(1.8cm)=(red)
}
\node[bloc, minimum width=5.5cm, 
      shading=myshadingA]  
at (-9,0.5) {Initialize process};

\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容