散点图

和第一篇博客里的内容类似,只不过从折线图到其他类型的图去延伸,具体用法也和折线图类似

# 数据集
data = pd.read_csv('./data/lx_bi_zan.txt',names=["bi","zan"])
x = data.bi.values.tolist()
y = data.zan.values.tolist()
# 刻度
x_y_ticks = list(range(0,110,10))
print(x_y_ticks)
# 创建画布
plt.figure(figsize=(7,7),dpi=100)

# 作图
plt.scatter(x,y)
# 修改刻度
plt.xticks(x_y_ticks)
plt.yticks(x_y_ticks)
# 图像信息
plt.xlabel("硬币")
plt.ylabel("点赞")
plt.title("罗翔老师 硬币 - 点赞 图")
# 网格
plt.grid(linestyle="--",alpha=0.6)
# 显示
plt.show()

柱状图

因为数据是从csv文件获取到的,拿出来是dataframe类型,转换成列表,py把qq号当做整型了,所以超级大,用前面学过的修改刻度,用中文替换刻度值。

# 数据集
data = pd.read_csv('./data/pq_qq.txt',names=["qq","geshu"])
x = np.arange(10)
y = data.geshu.values.tolist()[0:10]

# 刻度
x_ticks = ["qq号{}".format(i) for i in range(1,11)]

# 创建画布
plt.figure(figsize=(7,7),dpi=100)

# 作图
plt.bar(x,y)

# 刻度
plt.xticks(x,x_ticks)
# 图像信息
plt.xlabel("qq号")
plt.ylabel("留言个数")
plt.title("佩奇 qq号-留言个数 图")
# 网格
plt.grid(linestyle="--",alpha=0.6)
# 显示
plt.show()

水平柱状图

普通柱状图使用的是bar,水平柱状图用的plt.barh(y,x)

但有区别的是,当使用水平柱状图时,我们原来坐标系中的x,y轴要互换位置,也就是普通柱状图的x,y轴现在要当做水平柱状图的y,x轴。其实也好理解,因为已经是水平了,我们想象一下把坐标系逆时针旋转90°效果是一样的,刚开始没考虑到,还是用原来的x,y轴的数据当水平柱状图的x,y轴数据。才导致出现了
plt.barh(y,x) 这样。

# 数据集
data = pd.read_csv('./data/pq_qq.txt',names=["qq","geshu"])
x = data.geshu.values.tolist()[0:10]
print(x)
y = range(10)

# 刻度
y_ticks = ["qq号{}".format(i) for i in data.qq.values.tolist()[0:10]]

# 创建画布
plt.figure(figsize=(7,7),dpi=100)

# 作图
plt.barh(y,x)

# 刻度
plt.yticks(y,y_ticks)
# 图像信息
plt.xlabel("留言个数")
plt.ylabel("qq号")
plt.title("佩奇 qq号-留言个数 图")
# 网格
plt.grid(linestyle="--",alpha=0.6)
# 显示
plt.show()

饼状图

饼状图和其他图形就有所区别,有很多的参数需要设置,我们先只绘制一个最简单的饼状图

labels = ['A','B','C','D']
x = [15,30,45,10]
#显示百分比
#饼图分离
explode = (0,0.1,0,0)
# 创建画布
plt.figure(figsize=(7,7),dpi=70)
#设置阴影效果
plt.pie(x,labels=labels,autopct='%3.2f%%',explode=explode,shadow=True)
#设置x,y的刻度一样,使其饼图为正圆
plt.axis('equal')
plt.show()


所念皆星河