Python3-数据可视化(基本图形绘制)

1. 条形图绘制plt.bar()
import pandas as pd
import matplotlib.pyplot as plt
#利用pandas读入泰坦尼克号人员数据
titanic = pd.read_csv("train.csv")
#提取“Age”属性中所有数值
age = titanic["Age"]

num_col = [[10, 0], [20, 0], [30, 0], [40, 0], [50, 0],
           [60, 0], [70, 0], [80, 0], [90, 0], [100, 0]]
#统计每个年龄段的人数(忽略无效值)
for i in range(0, len(age)):
    if 0 < age[i] <= 100:
        index = int(age[i] // 10)
        num_col[index][1] += 1
    else:
        continue
#横坐标值
year_col = ['0-9', '10-19', '20-29', '30-39', '40-49',
            '50-59', '60-69', '70-79', '80-89', '90-99']
#数值
value_col = []
for i in range(0, 10):
    value_col.append(num_col[i][1])
#绘制条形图,第一个参数为横轴,第二个参数为各项值,第三个参数为条形宽度
plt.bar(year_col, value_col, 0.3)
#barh将绘制横向条形图
#plt.barh(year_col, value_col, 0.3)
plt.title("Titanic age distribution")
plt.xlabel("age")
plt.xticks(rotation=45)
plt.ylabel("values")
plt.show()

在这里插入图片描述
####2. 散点图绘制plt.scatter()

#数据与条形图一致
#第三个参数越大点越大
plt.scatter(year_col, value_col, 30)

在这里插入图片描述

3.柱形图绘制plt.hist()

可以利用柱形图绘制函数plt.hist(age, bins=30)自动计算每指定年龄区间人数,减少在第三个条形图绘制中代码量

import pandas as pd
import matplotlib.pyplot as plt

titanic = pd.read_csv("train.csv")

age = titanic["Age"]
#bins=30, 将整个年龄区间分为30个小区间
plt.hist(age, bins=30)
#在参数中添加range(20,30)可表示绘制范围,结果为只绘制年龄20-30区间内的柱形图情况
#plt.hist(age, range(20-30),  bins=30)
plt.title("Titanic age distribution")
plt.xlabel("age")
plt.ylabel("values")
plt.show()

在这里插入图片描述

4.柱形图绘制plt.boxplot()
plt.boxplot(value_col)

在这里插入图片描述

5. 折线图绘制plt.plot()
import matplotlib.pyplot as plt
year = [1667, 1990, 1999, 2008, 2018]
value = [1, 2, 3, 4, 5]
#第一个参数是X轴,第二个参数是Y轴,第三个参数是颜色,第四个参数是加标签
plt.plot(year, value, c='red', label='label')
#控制X轴坐标的表示,参数为变化角度
plt.xticks(rotation=45)
#指定横轴名称
plt.xlabel('year')
#指定纵轴名称
plt.ylabel("value")
#指定图表名称
plt.title("show plot")
#控制标签框位置,best为自适应位置
plt.legend(loc='best')
plt.show()

在这里插入图片描述

6. 子图绘制fig.add_subplot()

将大图平分成X*Y块
x:大图分为X行
y:大图分为Y列
z:子图所在大图中的区域标号

fig = plt.figure()
ax1 = fig.add_subplot(2, 2, 1)
plt.title("ax1")
ax2 = fig.add_subplot(2, 2, 2)
plt.title("ax2")
ax3 = fig.add_subplot(2, 2, 3)
plt.title("ax3")
ax4 = fig.add_subplot(2, 2, 4)
plt.title("ax4")
plt.show()

在这里插入图片描述

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值