测试数据 fandango_scores.csv


bar

import matplotlib.pyplot as plt
import pandas as pd
from numpy import arangereviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
# bar()方法有两个必需的参数,左边和高度。
# 我们使用左参数来指定条形图左侧的x坐标。
# 我们使用高度参数来指定每个栏的高度
num_cols = ['RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
# ix[i, num_cols] 获取第i行的num_cols列中的数据,i从0开始
# 获取的列中数据即分别对应条形图的高度
bar_heights = norm_reviews.ix[0, num_cols].values
print(bar_heights)  # [4.3 3.55 3.9 4.5 5.0]
# 条形图的位置
bar_positions = arange(5) + 0.75
print(bar_positions)  # [0.75 1.75 2.75 3.75 4.75]
fig, ax = plt.subplots()
# 0.5 条形图的宽度
ax.bar(bar_positions, bar_heights, 0.5)
plt.show()


import matplotlib.pyplot as plt
import pandas as pd
from numpy import arangereviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
# 默认情况下,matplotlib将x轴标记标签设置为条上的整数值
# 在x轴上(从0到6),我们只需要在横轴上的横轴上标记条就可以了。
# 我们可以使用ax .set_xticks()将ticks的位置改变为[1,2,3,4,5]:
num_cols = ['RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
bar_heights = norm_reviews.ix[0, num_cols].values
bar_positions = arange(5) + 0.75
tick_positions = range(1, 6)
# 创建一个图和一组子图
fig, ax = plt.subplots()ax.bar(bar_positions, bar_heights, 0.5)
ax.set_xticks(tick_positions)
# 用字符串标签列表设置x-tick标签
ax.set_xticklabels(num_cols, rotation=45)ax.set_xlabel('Rating Source')
ax.set_ylabel('Average Rating')
ax.set_title('Average User Rating For Avengers: Age of Ultron (2015)')
plt.show()


barh

import matplotlib.pyplot as plt
import pandas as pd
from numpy import arangereviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
# 默认情况下,matplotlib将x轴标记标签设置为条上的整数值
# 在x轴上(从0到6),我们只需要在横轴上的横轴上标记条就可以了。
# 我们可以使用ax .set_xticks()将ticks的位置改变为[1,2,3,4,5]:
num_cols = ['RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
bar_heights = norm_reviews.ix[0, num_cols].values
bar_positions = arange(5) + 0.75
tick_positions = range(1, 6)
# 创建一个图和一组子图
fig, ax = plt.subplots()
# barh 做一个水平条形图
ax.barh(bar_positions, bar_heights, 0.5)ax.set_yticks(tick_positions)
# 用字符串标签列表设置y-tick标签
ax.set_yticklabels(num_cols)ax.set_ylabel('Rating Source')
ax.set_xlabel('Average Rating')
ax.set_title('Average User Rating For Avengers: Age of Ultron (2015)')
plt.show()


scatter

import matplotlib.pyplot as plt
import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
# 让我们来看一个可以帮助我们形象化许多点的图
fig, ax = plt.subplots()
# 不同标记大小和/或颜色的 y vs x 散点图
ax.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm'])
ax.set_xlabel('Fandango')
ax.set_ylabel('Rotten Tomatoes')
plt.show()


import matplotlib.pyplot as plt
import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
fig = plt.figure(figsize=(5, 10))
# 添加两个子图,均为散点图
ax1 = fig.add_subplot(2, 1, 1)
ax2 = fig.add_subplot(2, 1, 2)
ax1.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm'])
ax1.set_xlabel('Fandango')
ax1.set_ylabel('Rotten Tomatoes')
ax2.scatter(norm_reviews['RT_user_norm'], norm_reviews['Fandango_Ratingvalue'])
ax2.set_xlabel('Rotten Tomatoes')
ax2.set_ylabel('Fandango')
plt.show()


hist

import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
# value_counts 返回包含唯一值计数的对象。结果对象将按降序排列,因此第一个元素是最频繁出现的元素。默认情况下排除NA值
fandango_distribution = norm_reviews['Fandango_Ratingvalue'].value_counts()
# 按标签(沿着轴)对对象排序 此处的标签是 Fandango_Ratingvalue 的值
fandango_distribution = fandango_distribution.sort_index()imdb_distribution = norm_reviews['IMDB_norm'].value_counts()
# 按标签(沿着轴)对对象排序 此处的标签是 IMDB_norm 的值
imdb_distribution = imdb_distribution.sort_index()print(fandango_distribution)
print("-------------------------------")
print(imdb_distribution)


import matplotlib.pyplot as plt
import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]fig, ax = plt.subplots()
# 将Fandango_Ratingvalue的范围平均拆分为bins个宽度,
# 并只显示(4, 5)范围内的数据
# range不指定默认展示所有,bins不指定默认展示10个
ax.hist(norm_reviews['RT_user_norm'], range=(4, 5), bins=20)
plt.show()


import matplotlib.pyplot as plt
import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]fig = plt.figure(figsize=(5, 10))
ax1 = fig.add_subplot(2, 1, 1)
ax2 = fig.add_subplot(2, 1, 2)
ax1.hist(norm_reviews['Fandango_Ratingvalue'], bins=20, range=(0, 5))
ax1.set_title('Distribution of Fandango Ratings')
# 设置y轴的数据限制
ax1.set_ylim(0, 50)ax2.hist(norm_reviews['RT_user_norm'], 20, range=(0, 5))
ax2.set_title('Distribution of Rotten Tomatoes Ratings')
ax2.set_ylim(0, 50)plt.show()


boxplot

import matplotlib.pyplot as plt
import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]fig, ax = plt.subplots()
# 做一个盒须图
# 为“x”的每一列或“x”序列中的每个向量做一个盒状和须状图。
# 该框从数据的下四分位数扩展到上四分位数,中间有一条线。
# 晶须从盒中伸出来显示数据的范围。传单点是那些超过末尾的胡子
ax.boxplot(norm_reviews['RT_user_norm'])
ax.set_xticklabels(['Rotten Tomatoes'])
ax.set_ylim(0, 5)
plt.show()


import matplotlib.pyplot as plt
import pandas as pdreviews = pd.read_csv('fandango_scores.csv')
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]num_cols = ['RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue']
fig, ax = plt.subplots()
ax.boxplot(norm_reviews[num_cols].values)
ax.set_xticklabels(num_cols, rotation=90)
ax.set_ylim(0, 5)
plt.show()


007.python科学计算库matplotlib(下)相关推荐

  1. 005.python科学计算库pandas(下)

    测试数据 fandango_score_comparison.csv series import pandas as pd from pandas import Seriesfandango = pd ...

  2. Python科学计算库核心知识点总结_代码篇(ML/DL依赖语法)

    Python科学计算库核心知识点总结_代码篇(ML/DL依赖语法)                                                                    ...

  3. 初识 Python 科学计算库之 NumPy(创建多维数组对象)

    文章目录 参考 描述 NumPy 特点 获取 导入 多维数组对象 np.array() np.asarray() 范围 随机 概览 np.random.randn() np.random.normal ...

  4. 一文带你熟悉简单实用的Python科学计算库NumPy

    Python科学计算库NumPy 安装 数组的创建 array创建 **arange** 创建 **随机数创建** 方法numpy.random.random(size=None) 方法numpy.r ...

  5. Python 科学计算库 Numpy 准备放弃 Python 2 了

    Numpy 是 Python 的一个科学计算库,提供了矩阵运算的功能,一般与 Scipy.matplotlib 一起使用. 今天 Numpy 的 GitHub 主页上发文称,Numpy 库准备从 20 ...

  6. python科学计算库安装

    python科学计算相关的库包括numpy,scipy,matplotlib等,但是自己安装比较不容易,倒不是安装过程有多难,而是会出现各种各样的问题,现在做一记录 安装顺序numpy -> s ...

  7. python科学计算库-数值计算库与科学计算库

    BLAS 接口 BLAS , LAPACK , ATLAS 这些数值计算库的名字很类似,他们之间有什么关系呢?BLAS是一组线性代数运算接口,目前是事实上的标准,很多数值计算/科学计算都实现了这套接口 ...

  8. python科学计算库numpy和绘图库PIL的结合,素描图片(原创)

    # 导入绘图库 from PIL import Image #导入科学计算库 import numpy as np #封装一个图像处理工具类 class TestNumpy(object):def p ...

  9. Python | 科学计算库

    一.Numpy 1.ndarray对象 python提供了array模块,它可以直接保存数值(而不是对象),但是它不支持多维数组,也缺乏丰富的运算函数 ndarray即n维数组,它弥补了以上不足,提供 ...

最新文章

  1. 【软件需求工程与建模 - 小组项目】阶段性汇报-软件设计规格说明书3.0
  2. 【STM32】FreeRTOS列表和列表项详解
  3. [ NOIP提高组 2016]愤怒的小鸟(暴搜 + 状压DP)// [SNOI2017]一个简单的询问(莫队)
  4. SpringBoot 使用小技巧合集
  5. 2020-07-07
  6. 公众号快速搭建淘客机器人教程
  7. 【未来简史】读书笔记
  8. svn: Failed to add directory '../target': an unversioned directory of the same name already exis
  9. 算法基础11 —— 树入门(二叉树的遍历以及构造 + 普通树转换成二叉树 + 例题 + 二叉树的一些操作)
  10. 微信小程序用canvasToTempFilePath压缩图片,开发工具压缩正常而真机上比例失调
  11. 视频制作软件哪个好,视频剪辑软件哪个好,电视剧怎么剪辑成短视频发布?
  12. GO语言实现P2P网络-客户端实现并且运行和测试
  13. 原来win10有免费的文字语音朗读功能,配音再不愁了
  14. 【无碳小车入手】无碳小车中需要注意的小细节-曲率
  15. Ubuntu与WIndows桌面间切换
  16. POI 导入excel文件( 一 )
  17. ORB-SLAM3运行时出现“段错误(核心已转储)”解决方案
  18. ASP,php,jsp,ASP.net四种web平台语言的区别与前景
  19. 抖音小店无货源是怎么做的?开店需要我们准备什么?经验分享
  20. pageInfo参数大全

热门文章

  1. 用腾讯云服务器实现ipad连接远程电脑桌面record(详细)(含稳定连接方法)
  2. 报错:This dependency was not found
  3. 循环神经网络(RNN)的搭建,附带例子和完整代码——2
  4. BDS全球卫星导航定位系统
  5. CSS项下-角标效果实现
  6. Nokia N9/N10将使用MeeGo操作系统
  7. 适合森系复古风的句子,句句精辟,有意境!
  8. BootstrapTable Export导出xlsx格式
  9. d3 - 力引导图(二) 为节点设置多种唯一颜色方案
  10. 《Unity入门案例-Tanks坦克大战》2-场景设置