python matplotlib绘制图(持续更新....)


本文仅为个人Mark,针对一些细小问题,毕竟自己这不过脑子的记性有点差,


1.x轴为中文;添加数字

import importlib,sys
importlib.reload(sys)
import matplotlib.pyplot as plt
import numpy as np

plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

 x=np.arange(N)+1 #这里N 是你x轴要显示的数量 zifulist 为中文
    plt.xlabel('商品')
    plt.ylabel('销量')
    plt.title('商品销量前十')
    plt.xticks(x, zifulist, size='small', rotation=20)  # 设置X轴间距,使数据平铺
    rect = plt.bar(left=x, height=b[:N], width=0.35, align="center",alpha=0.8)
    autolabel(rect)
    plt.show()

#绘制柱状图时添上数字
def autolabel(rects):
    for rect in rects:
        height = rect.get_height()
        plt.text(rect.get_x(), 1.03*height, "%s" % float(height))

效果如下:

python matplotlib绘制图(持续更新....)_第1张图片


2.绘制折线图每个点标注出来

(= = 实际上就是画两遍,第一遍画散点图,第二遍画折线图)

import numpy as np
import pylab as pl
import importlib, sys
importlib.reload(sys)


pl.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
pl.rcParams['axes.unicode_minus']=False #用来正常显示负号

x = np.arange(len(adlist))+1

    pl.xlabel('广告名称')
    pl.ylabel('相似度')
    pl.title('广告与用户兴趣相似度')
    pl.xticks(x,adlist,size = 'small',rotation =20)

    pl.plot(x,y,'b*')
    pl.plot(x,y, 'r')
    pl.show()

效果如下:


python matplotlib绘制图(持续更新....)_第2张图片


你可能感兴趣的:(Python)