Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Look at the output below. You can see that it is possible to change the arrow style but not the linewidths.

sage: p = plot_vector_field((x, y), (x, -2, 2), (y, -2, 2), headlength=10, headwidth=10)
sage: p._objects
[PlotField defined by a 20 x 20 vector grid]
sage: P = p._objects[0]
sage: P._allowed_options()
{'color': 'The color of the arrows',
 'headaxislength': 'head length at shaft intersection, default is 4.5',
 'headlength': 'head length as multiple of shaft width, default is 5',
 'headwidth': 'Head width as multiple of shaft width, default is 3',
 'pivot': 'Where the arrow should be placed in relation to the point (tail, middle, tip)',
 'plot_points': 'How many points to use for plotting precision',
 'zorder': 'The layer level in which to draw'}

I must agree that the documentation of vector field is pretty poor. And the function definitely needs to add the functionality for linewidth, and possible other things. The plot_vector_field calls matplotlib's quiver function which has support for linewidth.

I just opened ticket 15724 and ticket 15725 to address these issues.