«Недопустимая единица измерения (вставлена ​​точка)» Проблема с foreach

«Недопустимая единица измерения (вставлена ​​точка)» Проблема с foreach

Я пытаюсь сделать серию кругов с градиентами. На второй странице, которая создана, есть только /2pt/1pt/2pt и на последней /20pt. Думаю, что-то не так с моим циклом foreach, но я не знаю что.

\documentclass[tikz]{standalone}
\usepackage{xcolor}

\definecolor{myyellow}{cmyk}{0,0,10,0}

\begin{document}

\foreach \Radius/\j in {6.0/1, 6.05/2,...,8.0/42}
{
    \begin{tikzpicture}[scale=.5]
        \pgfmathsetmacro\k{\j*10}
        \useasboundingbox[fill=black] (-8.2,-8.2) rectangle (8.2cm,8.2cm);
        \fill[fill=myyellow!\k] (0,0) circle (\Radius);
    \end{tikzpicture}
}

\end{document}

Ошибка:

Illegal unit of measure (pt inserted).

<to be read again> 
                   /
l.15 }

решение1

Вам необходимо использовать целые числа для цветовой дроби, и есть возможность использовать countименно в этой ситуации.

\documentclass[tikz]{standalone}
\usepackage{xcolor}

\definecolor{myyellow}{cmyk}{0,0,10,0}

\begin{document}

\foreach \Radius [count=\j] in {6.0, 6.05,...,8.0}
{
    \begin{tikzpicture}[scale=.5]
        \pgfmathtruncatemacro\k{\j*10}
        \useasboundingbox[fill=black] (-8.2,-8.2) rectangle (8.2cm,8.2cm);
        \fill[fill=myyellow!\k] (0,0) circle (\Radius);
    \end{tikzpicture}
}

\end{document}

введите описание изображения здесь

решение2

На самом деле это не имеет смысла myyellow!420: все значения от 100 и выше дадут один и тот же цвет.

Здесь градиент идет от 2 до 84 с шагом 2.

\documentclass[tikz]{standalone}
\usepackage{xcolor}

\definecolor{myyellow}{cmyk}{0,0,10,0}

\begin{document}

\foreach \x in {2,4,...,84}
  {
    \begin{tikzpicture}[scale=.5]
        \pgfmathsetmacro\Radius{(\x-2)/41+6}
        \useasboundingbox[fill=black] (-8.2,-8.2) rectangle (8.2cm,8.2cm);
        \fill[fill=myyellow!\x] (0,0) circle (\Radius);
    \end{tikzpicture}
  }

\end{document}

Связанный контент