2011年03月21日 星期一 17:48
这么多图的话,用figure的add_axes()方法直接指定每个子图在图表中的位置和大小,让它们正好连在一起。
那个竖条图可以参考:
http://matplotlib.sourceforge.net/examples/pylab_examples/barh_demo.html
2011年03月21日 星期一 19:27
能举个例子吗
2011年03月21日 星期一 19:35
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = fig.add_axes([0.1, 0.1, 0.4, 0.7])
ax2 = fig.add_axes([0.55, 0.1, 0.4, 0.7])
x = np.arange(0.0, 2.0, 0.02)
y1 = np.sin(2*np.pi*x)
y2 = np.exp(-x)
l1, l2 = ax1.plot(x, y1, 'rs-', x, y2, 'go')
y3 = np.sin(4*np.pi*x)
y4 = np.exp(-2*x)
l3, l4 = ax2.plot(x, y3, 'yd-', x, y3, 'k^')
fig.legend((l1, l2), ('Line 1', 'Line 2'), 'upper left')
fig.legend((l3, l4), ('Line 3', 'Line 4'), 'upper right')
plt.title('Annother plot using matplotlib',fontstyle='normal')
plt.savefig('add_axes.png')
#plt.savefig('matplotlib-169.svg')
plt.close()
2011年03月21日 星期一 19:36
发现发布消息后,不能编辑修改
2011年03月21日 星期一 19:40
我说的是这个图,有点不知道怎么下手
2011年03月21日 星期一 19:50
想通了
2011年03月21日 星期一 20:04
并排的图这么做:
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = fig.add_axes([0.1, 0.1, 0.4, 0.7])
ax2 = fig.add_axes([0.5, 0.1, 0.4, 0.7])
ax2.yaxis.set_ticks_position("right")
fig.show()
2011年03月21日 星期一 20:13
方块图这么做:
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
plt.barh([0,1,2,4],[0.5,1,2,-0.5], align="center", height=[0.5,1.5,0.5,3.5], fill=False, edgecolor=["red","green","blue","black"])
plt.show()
Zeuux © 2024
京ICP备05028076号