2014-05-09 15 views
13

Làm thế nào để đưa huyền thoại ra ngoài cốt truyện?Làm thế nào để đặt huyền thoại bên ngoài cốt truyện với gấu trúc

import pandas as pd 
import matplotlib.pyplot as plt 
a = {'Test1': {1: 21867186, 4: 20145576, 10: 18018537}, 
    'Test2': {1: 23256313, 4: 21668216, 10: 19795367}} 

d = pd.DataFrame(a).T 
#print d 

f = plt.figure() 

plt.title('Title here!', color='black') 
plt.legend(loc='center left', bbox_to_anchor=(1, 0.5)) 
d.plot(kind='bar', ax=f.gca()) 
plt.show() 
+13

Thực ra nó không hoàn toàn trùng lặp ... câu hỏi đặt ra là dành riêng cho Pandas. Câu trả lời dưới đây cho thấy cách gán một trục cho một cuộc gọi hàm lô từ 'pandas.DataFrame.plot' mà làm cho nó có thể áp dụng các tinh lọc' matplotlib.pyplot'. – slushy

+0

Vâng, đây không phải là một bản sao và nó gây phiền nhiễu rằng nó được đánh dấu như vậy. – ferrouswheel

Trả lời

22

Tôi nghĩ bạn cần gọi plot trước khi bạn thêm số điện thoại legend.

import pandas as pd 
import matplotlib.pyplot as plt 
a = {'Test1': {1: 21867186, 4: 20145576, 10: 18018537}, 
    'Test2': {1: 23256313, 4: 21668216, 10: 19795367}} 

d = pd.DataFrame(a).T 
#print d 

f = plt.figure() 

plt.title('Title here!', color='black') 
d.plot(kind='bar', ax=f.gca()) 
plt.legend(loc='center left', bbox_to_anchor=(1.0, 0.5)) 
plt.show() 
+1

Tuy nhiên, một nửa số huyền thoại hiện không có trong hình? Làm thế nào là nó có thể sửa chữa nó? – user977828

+0

Nó thực sự là một câu hỏi riêng biệt, nhưng bạn có thể thử 'f.subplots_adjust (phải = 0,8)'. – Phil

+3

Nếu bạn chỉ muốn di chuyển chú giải, bạn có thể tận dụng thực tế là '' .plot'' trả về một trục matplotlib và thêm '' .legend (bbox_to_anchor = (1,1)) '' vào cuối của dòng âm mưu của mã số –

Các vấn đề liên quan