人工智能基础学习(三)——可视化工具Matplotlib

1,折线图的绘制

import pandas as pd
from matplotlib import pyplot as plt
unrate = pd.read_csv("unrate.csv")
unrate["DATE"] = pd.to_datetime(unrate["DATE"])
unrate.head(12)
first_twelve = unrate[0:12]
plt.plot(first_twelve["DATE"],first_twelve["VALUE"])
plt.xlabel("Month")                        #x轴单位
plt.ylabel("Unemployment rate")
plt.title("Monthly Unemployment rate")        #坐标系标题
plt.xticks(rotation = 45)                        #x轴坐标内容偏移45度
plt.show()

2,子图操作

from matplotlib import pyplot as plt
import pandas as pd
#创建一个分图,并显示出来
fig = plt.figure()
ax1 = fig.add_subplot(4,3,1)
ax2 = fig.add_subplot(4,3,2)
ax2 = fig.add_subplot(4,3,6)
plt.show
#在分图内随机画线
import numpy as np
fig = plt.figure(figsize = (3,3))
ax1 = fig.add_subplot(1,2,1)
ax2 = fig.add_subplot(1,2,2)
ax1.plot(np.random.randint(1,5,5),np.arange(5))
ax2.plot(np.arange(10)*3,np.arange(10))
plt.show()
#在一个折线图内画多条线
unrate = pd.read_csv("unrate.csv")
unrate["DATE"] = pd.to_datetime(unrate("DATE"))
unrate["MONTH"] = unrate["DATE"].dt.month
fig = plt.figure(figsize = (10,6))
colors = ["red","blue","green","orange","black"]
for i in range(5):
    start_index = i * 12
    end_index = (i + 1) * 12
    subset = unrate[start_index:end_index]
    label = str(1984 + i)
    plt.plot(subset["MONTH"],subset["VALUE"],colors = colors[i],label = label)
plt.legend(loc = "best")
plt.show()

3,条形图与散点图

(1)条形图

from matplotlib import pyplot as plt
import pandas as pd
from numpy import arange
reviews = pd.read_csv("fandango_score_comparison.csv")
num_cols = ['RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']            #取评分媒体画x轴
norm_review = reviews[num_cols]
bar_height = norm_review.ix[0,num_cols].values    #设置条形图的高度
bar_position = arange(5) + 0.75                    #设置x轴的值
gig,ax = plt.subplots()                            #画图
ax.bar(bar_position,bar_height,0.3)                #把bar变为barh则变为横向图
tick_position = range(0,6)
ax.set_ticks(tick_position)
ax.set_ticklabel(num_cols,rotation = 45)
ax.set_xlabel("")
ax.set_ylabel("")
ax.set_title("")
plt.show()

(2)散点图

fig,ax = plt.subplots()
ax.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm'])
ax.set_xlabel("x")
ax.set_ylabel("y")
plt.show()

4,柱状图与盒图

猜你喜欢

转载自blog.csdn.net/jihui1284/article/details/81175050