Мудрец: Как построить точки на графике функции f (x) при определенных значениях x? - PullRequest
0 голосов
/ 27 февраля 2019

Если у меня есть двухмерный график функции f(x), например:

f(x) = sin(x)
show(plot(f, (x,0, 2 * pi)))

Используя Sage, как рисовать точки на графике f(x) при указанных значениях x?Например, как бы я отобразил красные точки в верхней части графика выше, чтобы он выглядел как график ниже?

graph of sine function with red dots at specific points on graph

При заданном списке значенийL= [0, pi/8, pi/4, pi/2, 3*pi/4, pi], есть ли краткий способ рисовать точки на графике f(x) при каждом из этих значений x?

1 Ответ

0 голосов
/ 28 февраля 2019

Чтобы составить список точек, используйте points или point2d.См.

Обратите внимание, что вы также можете настроить отметки на осях в соответствии с точками, которые вы наносите.

Вот пример.

sage: f(x) = sin(x)
sage: xx = [0, pi/8, pi/4, pi/2, 3*pi/4, pi]
sage: yy = [f(x) for x in xx]
sage: xy = list(zip(xx, yy))
sage: f_plot = plot(f, (x, 0, 2*pi), ticks=(xx, yy), tick_formatter=(pi, None))
sage: f_dots = points(xy, color='red')
sage: p = f_plot + f_dots
sage: p

Сохраните график, используя p.save:

sage: p.save('plot_sin_with_points.png')

Plot sine curve with some points

Чтобы увеличить точки, используйте size (размер по умолчанию - 10).

Чтобы установить порядок слоев графических элементов в сумме, используйте zorder.

* 1030.* Например, можно определить f_dots следующим образом:
sage: f_dots = points(xy, color='red', size=30, zorder=20)

и получить более крупные красные точки, сидящие «сверху» кривой вместо «снизу».

...