# Plotting cos(x+2)cos(x)-cos(x+1)²

Hello.

Why does sage fail to plot this function?

plot(cos(x+2)

cos(x)-cos(x+1)cos(x+1),(x,-pi,pi))

Returns

IndexError: index out of bounds

Plotting cos(x+2)cos(x)-cos(x+1)²

asked **
2011-10-16 04:47:57 -0500
**

Anonymous

Hello.

Why does sage fail to plot this function?

plot(cos(x+2)

cos(x)-cos(x+1)cos(x+1),(x,-pi,pi))

Returns

IndexError: index out of bounds

add a comment

3

There are two points to your question: 1)

```
cos(x+2)*cos(x)-cos(x+1)*cos(x+1)=-sin(1)^2 #i.e. a constant
```

(Actually one of the experts should kick in and tell us what to do to make sage simplify your expression to that. I am frequently having problems to force sage to simplify even the most trivial expressions. A tutorial on that would be nice...)

2) sage uses matplotlib to do the plotting of your expression. The automatic selection of a 'proper' y-axis extent of that can cause problems when the actual y-extent of your data is identically zero. So, do something like:

```
plot(cos(x+2)*cos(x)-cos(x+1)*cos(x+1),(-pi,pi),ymin=-sin(1)^2*1.1,ymax=-sin(1)^2*.9)
```

and you'll get: ... a nice straight line

For your first point, try `f = cos(x+2)*cos(x)-cos(x+1)*cos(x+1)` and then `f.trig_reduce()`.

2

Asked: **
2011-10-16 04:47:57 -0500
**

Seen: **202 times**

Last updated: **Oct 16 '11**

Plotting in 3D in spherical coordinates

How can I display a plot from a script?

show several graphics in notebook

Changing the vertex shape for combinatorial graphs

Plot Series of 3D Direction Vectors (Not All from Origen)

How to change the default program which open the 2D picture which the plot producted?

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.