import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
# 图片和子图
fig = plt.figure()
ax1 = fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
ax3 = fig.add_subplot(2,2,3)
# bins 条状图数目
plt.show()
# 设置边界
fig,axes = plt.subplots(2,2,sharex=True,sharey=True)
for i in range(2):
for j in range(2):
plt.subplots_adjust(wspace=0,hspace=0)
plt.show()
# from numpy.random import randn
# k 颜色 ,o 圆点 -- 虚线
plt.plot(randn(30).cumsum(),'ro--')
plt.plot(randn(30).cumsum(),color='k',linestyle = 'dashed',marker='o')
plt.show()
plt.plot(data,'k--',label='Default')
plt.plot(data,'k-',drawstyle='steps-post',label='steps-post')
plt.legend(loc='best')
plt.show()
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ticks =ax.set_xticks([0,250,500,750,1000])
labels = ax.set_xticklabels(['one','two','three','four','five'],rotation = 5 ,fontsize='small')
ax.set_xlabel('Stages')
ax.set_title('My First matplotlib plot')
plt.show()
from numpy.random import randn
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot(randn(1000).cumsum(),'k',label = 'one')
ax.plot(randn(1000).cumsum(),'r--',label = 'two')
ax.plot(randn(1000).cumsum(),'b.',label='three')
ax.legend(loc='best')
plt.show()
# 注释与子视图加工
from datetime import datetime
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
data = pd.read_csv('examples/spx.csv',index_col=0,parse_dates=True)
spx = data['SPX']
spx.plot(ax=ax,style = 'k-')
crisis_data = [(datetime(2007,10,11),'peak of bull market'),
(datetime(2008,3,12),'bear stearan fails'),
(datetime(2008,9,15),'lehman bankruptcy')]
for date , label in crisis_data:
ax.annotate(label,xy = (date,spx.asof(date)+75),xytext = (date,spx.asof(date)+225),arrowprops=dict(facecolor='black',headwidth =4,width =2,headlength=4),horizontalalignment='left',verticalalignment='top')
ax.set_xlim(['1/1/2007','1/1/2011'])
ax.set_ylim([600,1800])
ax.set_title('Important dates in the 2008 - 2009 financial crisis ')
plt.show()
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
rect = plt.Rectangle((0.2,0.74),0.4,0.15,color='k',alpha = 0.3)
ax.add_patch(rect)
circ = plt.Circle((0.7,0.2),0.15,color='b',alpha=0.3)
ax.add_patch(circ)
pgon = plt.Polygon([[0.15,0.15],[0.35,0.4],[0.2,0.6]])
ax.add_patch(pgon)
plt.show()
# 使用pandas和seaborn绘图
s.plot()
plt.show()
df.plot()
plt.show()
# 柱状图
fig ,axes = plt.subplots(2,1)
plt.show()
# print(df)
plt.show()
tips = pd.read_csv('examples/tips.csv')
party_counts = pd.crosstab(tips['day'],tips['size'])
print(party_counts)
party_counts=party_counts.loc[:,2:5]
print(party_counts)
party_pcts = party_counts.div(party_counts.sum(1),axis=0)
print(party_pcts)
# 每一行的综合的集合
#print(party_counts.sum(1))
plt.show()
import seaborn as sns
tips['tip_pct'] = tips['tip'] /(tips['total_bill'] - tips['tip'])
# print(tips.head())
# sns.barplot(x='tip_pct',y='day',hue='time',data=tips,orient='h')
sns.set(style='whitegrid')
# 直方图
# tips['tip_pct'].plot.hist(bins=50)
# 密度图
# tips['tip_pct'].plot.density()
# # plt.show()
values = pd.Series(np.concatenate([comp1,comp2]))
print(values)
sns.distplot(values,bins=100,color='k')
plt.show()
领取专属 10元无门槛券
私享最新 技术干货