2013-12-17 64 views
5

我是Python的新手,虽然我确实有以前的编程经验。我目前的兴趣是生成高质量的原理图(以及后来的数据图)。在matplotlib中绘制带箭头的钝圆弧

我需要在终点绘制带箭头的圆弧。我已经浏览了很多帖子,并尝试过几个例子,但似乎我仍然错过了一些基本知识。所以,我需要的是这样的:

http://i.stack.imgur.com/Z5V86.png

我用下面的例子实验,试图初步绘制圆弧,但即使这样也不行。我正在使用matplotlib.patches,但我打开其他建议,我需要什么。

# -*- coding: utf-8 -*- 
import numpy as np 
import matplotlib.pyplot as plt 
from matplotlib.patches import Ellipse, Arc 
from matplotlib import cm, colors, patches 
from math import pi 

fig = plt.figure() 
ax = fig.add_subplot(1,1,1) 
ellipse = Arc([2.5,2.5],1,1,0,0,pi,color='green', linewidth='0.5') 
ax.add_patch(ellipse) 
plt.show() 

回答

5

好,

    如果你想要的 pi的角度
  • ,通过180
  • 线宽必须是标量。通过.5而不是'.5'作为线宽参数
  • 您需要更改轴的极限,否则您将看不到弧。添加类似ax.set_xlim(1.5,3.1)ax.set_ylim(2.4,3.7)

您可能还希望选择另一种策略,像

ax.plot([.5],[.5],marker=r'$\circlearrowleft$',ms=100)

+1

感谢@flebool!我现在意识到这本来应该是一项微不足道的任务,但是对于一开始你总是觉得有点迷失的语言来说,这是一个新手。我会为你投票,但我没有声望。 – malteser