失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python绘制图形显示不了_python绘制图形

python绘制图形显示不了_python绘制图形

时间:2024-03-19 23:48:45

相关推荐

python绘制图形显示不了_python绘制图形

一、绘制条形图

1.单项垂直条形图

#导入绘图模块

import matplotlib.pyplot as plt

#构建数据

GDP = [12406.8, 13908.57, 9386.87, 9143.64]

#中文乱码的处理

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']

plt.rcParams['axes.unicode_minus'] = False

#绘图

plt.bar(range(4), GDP, align = 'center', color = 'steelblue', alpha = 0.8)

#添加轴标签

plt.ylabel('GDP')

#添加标题

plt.title('四个直辖市GDP大比拼')

#添加刻度标签

plt.xticks(range(4), ['北京市', '上海市', '天津市', '重庆市'])

#设置Y轴的刻度范围

plt.ylim([5000, 15000])

#为每个条形图添加数值标签

for x,y in enumerate(GDP):

plt.text(x, y+100, '%s'%round(y, 1), ha = 'center')

#显示图形

plt.show()

2.单项水平条形图

#导入绘图模块

import matplotlib.pyplot as plt

#构建数据

price = [39.5, 39.9, 45.4, 38.9, 33.34]

#中文乱码的处理

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']

plt.rcParams['axes.unicode_minus'] = False

#绘图

plt.barh(range(5), price, align = 'center', color = 'steelblue', alpha = 0.8)

#添加轴标签

plt.xlabel('价格')

#添加标题

plt.title('不同平台书的最低价比较')

#添加刻度标签

plt.yticks(range(5), ['亚马逊', '当当网', '中国图书网', '京东', '天猫'])

#设置Y轴的刻度范围

plt.xlim([32, 47])

#为每个条形图添加数值标签

for x, y in enumerate(price):

plt.text(y+0.1, x, '%s'%y, va = 'center')

#显示图形

plt.show()

3.垂直堆叠条形图

货运.xls

22.5K ·

百度网盘

# 导入模块

import matplotlib.pyplot as plt

import numpy as np

import pandas as pd

#中文乱码的处理

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']

plt.rcParams['axes.unicode_minus'] = False

# 导入数据

data = pd.read_excel('货运.xls')

# 绘图

plt.bar(np.arange(8), data.loc[0,:][1:], color = 'red', alpha = 0.8, label = '铁路', align = 'center')

plt.bar(np.arange(8), data.loc[1,:][1:], bottom = data.loc[0,:][1:], color = 'green', alpha = 0.8, label = '公路', align = 'center')

plt.bar(np.arange(8), data.loc[2,:][1:], bottom = data.loc[0,:][1:]+data.loc[1,:][1:], color = 'm', alpha = 0.8,label = '水运', align = 'center')

plt.bar(np.arange(8), data.loc[3,:][1:], bottom = data.loc[0,:][1:]+data.loc[1,:][1:]+data.loc[2,:][1:], color ='black', alpha = 0.8, label = '民航', align = 'center')

# 添加轴标签

plt.xlabel('月份')

plt.ylabel('货物量(万吨)')

# 添加标题

plt.title('各月份物流运输量')

# 添加刻度标签

plt.xticks(np.arange(8),data.columns[1:])

# 设置Y轴的刻度范围

plt.ylim([0,500000])

# 为每个条形图添加数值标签

for x_t,y_t in enumerate(data.loc[0,:][1:]):

plt.text(x_t,y_t/2,'%sW' %(round(y_t/10000,2)),ha='center', color = 'white')

for x_g,y_g in enumerate(data.loc[0,:][1:]+data.loc[1,:][1:]):

plt.text(x_g,y_g/2,'%sW' %(round(y_g/10000,2)),ha='center', color = 'white')

for x_s,y_s in enumerate(data.loc[0,:][1:]+data.loc[1,:][1:]+data.loc[2,:][1:]):

plt.text(x_s,y_s-20000,'%sW' %(round(y_s/10000,2)),ha='center', color = 'white')

# 显示图例

plt.legend(loc='upper center', ncol=4)

# 显示图形

plt.show()

4.水平交错条形图

# 导入绘图模块

import matplotlib.pyplot as plt

import numpy as np

# 构建数据

Y = [15600,12700,11300,4270,3620]

Y = [17400,14800,12000,5200,4020]

labels = ['北京','上海','香港','深圳','广州']

bar_width = 0.45

# 中文乱码的处理

plt.rcParams['font.sans-serif'] =['Microsoft YaHei']

plt.rcParams['axes.unicode_minus'] = False

# 绘图

plt.bar(np.arange(5), Y, label = '', color = 'steelblue', alpha = 0.8, width = bar_width)

plt.bar(np.arange(5)+bar_width, Y, label = '', color = 'indianred', alpha = 0.8, width = bar_width)

# 添加轴标签

plt.xlabel('Top5城市')

plt.ylabel('家庭数量')

# 添加标题

plt.title('亿万财富家庭数Top5城市分布')

# 添加刻度标签

plt.xticks(np.arange(5)+bar_width,labels)

# 设置Y轴的刻度范围

plt.ylim([2500, 19000])

# 为每个条形图添加数值标签

for x,y in enumerate(Y):

plt.text(x, y+100, '%s' %y)

for x,y in enumerate(Y):

plt.text(x+bar_width, y+100, '%s' %y)

# 显示图例

plt.legend()

# 显示图形

plt.show()

如果觉得《python绘制图形显示不了_python绘制图形》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。