Строго говоря, элемент Canvas такой возможности не предоставляет. Вы должны реализовать её сами на этапе формирования фигуры до вывода её на Canvas. Вы также можете использовать уже готовое решение (библиотеку).
Canvas — это элемент для вывода растровой графики. Размер фигуры, радиус окружности и т.п. — это понятия векторной графики. При переводе из вектора в растр все эти параметры теряются, остаются только пиксели и их цвета.
У Canvas действительно есть методы для рисования геометрических фигур. Например, окружность можно нарисовать вот так:
ctx.beginPath();
ctx.arc(x, y, radius, 0, 2 * Math.PI);
ctx.stroke();
Здесь radius это радиус окружности. Чтобы он зависел от каких-то действий пользователя, нужно явно обработать это в коде:
- Нарисовать окружность изначального радиуса
- Ждать нужных действий пользователя
- При получении нового сигнала пересчитать радиус
- Очистить Canvas
- Нарисовать новую окружность с измененным радиусом, перейти к п. 2
Конкретная реализация зависит от конкретных требований — что, где как и от каких действий пользователя должно меняться — и выходит за рамки ответа на Кью. В качестве стартового примера могу порекомендовать
"Drawing with mouse events" из MDN — там рисуются линии по координатам мыши. Это не изменение, а дорисовывание фигур на Canvas, но общая суть та же — программа реагирует на ввод пользователя и выводит линии по полученным координатам.