Python matplotlib模块及柱状图用法解析

代码如下

import matplotlib.pyplot as plt
import numpy as np

def test4():
  names = ['电影1', '电影2', '电影3']
  real_num1 = [7548, 4013, 1673]
  real_num2 = [5453, 1840, 1080]
  real_num3 = [4348, 2345, 1890]
  x = np.arange(len(names))
  # 绘制柱形图
  width = 0.3
  plt.bar(x, real_num1, alpha=0.5, width=width, label=names[0])
  plt.bar([i+width for i in x], real_num2, alpha=0.5, width=width, label=names[1])
  plt.bar([i+2*width for i in x], real_num3, alpha=0.5, width=width, label=names[2])
  # 正常显示中文
  plt.rcParams["font.sans-serif"] = ["SimHei"]
  # 设置x坐标轴的值
  x_label = ["第{}天".format(i+1) for i in x]
  # 让x坐标轴显示在中间
  plt.xticks([i+width for i in x], x_label)
  # 添加ylabel
  plt.ylabel("票房数")
  # 添加图例
  plt.legend()
  # 添加标题
  plt.title("3天3部电影票房数")
  plt.show()

test4()

结果显示:

代码如下

from mpl_toolkits.mplot3d import Axes3Dimport matplotlib.pyplot as pltimport numpy as np

def test5():
  # ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='rainbow') #绘面
  # 绘制3D曲面图
  fig = plt.figure()
  ax = Axes3D(fig)
  # -4 到4 [-4, 4),步长为0.25
  X = np.arange(-4, 4, 0.25)
  Y = np.arange(-4, 4, 0.25)
  # meshgrid方法,你只需要构造一个表示x轴上的坐标的向量和一个表示y轴上的坐标的向量;然后作为参数给到meshgrid(),该函数就会返回相应维度的两个矩阵;
  X, Y = np.meshgrid(X, Y)
  R = np.sqrt(X**2 + Y ** 2)
  Z = np.sin(R)
  ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap="rainbow")
  plt.show()

结果如下:

代码如下

import matplotlib.pyplot as plt
import numpy as np
def test6():
  # 绘制三维散点图
  # ax.scatter(x[1000:4000],y[1000:4000],z[1000:4000],c='r') #绘点
  data = np.random.randint(0, 255, size=[40, 40, 40])
  x, y, z = data[0], data[1], data[2]
  # 创建一个三维的绘图工程
  ax = plt.subplot(111, projection="3d")
  # 将数据点分成三部分画,在颜色上有区分度
  ax.scatter(x[:10], y[:10], z[:10], c='y') # 绘制数据点
  ax.scatter(x[10:20], y[10:20], z[10:20], c='r')
  ax.scatter(x[30:40], y[30:40], z[30:40], c='g')
  # 坐标轴
  ax.set_zlabel("Z")
  ax.set_ylabel("Y")
  ax.set_xlabel("X")
  plt.show()

效果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python matplotlib实时画图案例

    实时画图 import matplotlib.pyplot as plt ax = [] # 定义一个 x 轴的空列表用来接收动态的数据 ay = [] # 定义一个 y 轴的空列表用来接收动态的数据 plt.ion() # 开启一个画图的窗口 for i in range(100): # 遍历0-99的值 ax.append(i) # 添加 i 到 x 轴的数据中 ay.append(i**2) # 添加 i 的平方到 y 轴的数据中 plt.clf() # 清除之前画的图 plt.plot(

  • Python之Matplotlib文字与注释的使用方法

    可视化对于大家来说确实是有关的,因为确实是直观的,每一组大数据如果可以用可视化进行展示的话可以让大家豁然开朗.但在另外一些场景中,辅之以少量的文字提示(textual cue)和标签是必不可少的.虽然最基本的注释(annotation)类型可能只是坐标轴标题与图标题,但注释可远远不止这些.让我们可视化一些数据,看看如何通过添加注释来更恰当地表达信息. 首先导入画图需要用到的一些函数: import matplotlib.pyplot as plt import matplotlib as mpl

  • python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式

    用matplotlib画二维图像时,默认情况下的横坐标和纵坐标显示的值有时达不到自己的需求,需要借助xticks()和yticks()分别对横坐标x-axis和纵坐标y-axis进行设置. import numpy as np import matplotlib.pyplot as plt x = range(1,13,1) y = range(1,13,1) plt.plot(x,y) plt.show() x坐标和y坐标都表示1到12的整数,不进行坐标设置时,执行效果为: 此时的x轴和y轴都

  • 解决Python Matplotlib绘图数据点位置错乱问题

    在绘制正负样本在各个特征维度上的CDF(累积分布)图时出现了以下问题: 问题具体表现为: 1.几个负样本的数据点位置倒错 2.X轴刻度变成了乱七八糟一团鬼东西 最终解决办法 造成上述情况的原因其实是由于输入matplotlib.plot()函数的数据x_data和y_data从CSV文件中直接导入后格式为string,因此才会导致所有数据点的x坐标都被直接刻在了x轴上,且由于坐标数据格式错误,部分点也就表现为"乱点".解决办法就是导入x,y数据后先将其转化为float型数据,然后输入p

  • 使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示

    一.当我们用Python matplot时作图时,一些数据需要以百分比显示,以更方便地对比模型的性能提升百分比. 二.借助matplotlib.ticker.FuncFormatter(),将坐标轴格式化. 例子: # encoding=utf-8 import matplotlib.pyplot as plt from matplotlib.ticker import FuncFormatter plt.rcParams['font.family'] = ['Times New Roman']

  • Python matplotlib画图时图例说明(legend)放到图像外侧详解

    用python的matplotlib画图时,往往需要加图例说明.如果不设置任何参数,默认是加到图像的内侧的最佳位置. import matplotlib.pyplot as plt import numpy as np x = np.arange(10) fig = plt.figure() ax = plt.subplot(111) for i in xrange(5): ax.plot(x, i * x, label='$y = %ix$' % i) plt.legend() plt.sho

  • Python matplotlib读取excel数据并用for循环画多个子图subplot操作

    读取excel数据需要用到xlrd模块,在命令行运行下面命令进行安装 pip install xlrd 表格内容大致如下,有若干sheet,每个sheet记录了同一所学校的所有学生成绩,分为语文.数学.英语.综合.总分 考号 姓名 班级 学校 语文 数学 英语 综合 总分 ... ... ... ... 136 136 100 57 429 ... ... ... ... 128 106 70 54 358 ... ... ... ... 110.5 62 92 44 308.5 画多张子图需要

  • Python matplotlib模块及柱状图用法解析

    代码如下 import matplotlib.pyplot as plt import numpy as np def test4(): names = ['电影1', '电影2', '电影3'] real_num1 = [7548, 4013, 1673] real_num2 = [5453, 1840, 1080] real_num3 = [4348, 2345, 1890] x = np.arange(len(names)) # 绘制柱形图 width = 0.3 plt.bar(x, r

  • Python openpyxl模块原理及用法解析

    这篇文章主要介绍了Python openpyxl模块原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 此模块不是Python内置的模块需要安装,安装方法如下 pip install openpyxl 注意: 此模块只支持offce 2010,即是电子表格后缀是*.xlsx 1.openpyxl模块常用函数 import openpyxl wb = openpyxl.load_workbook('example.xlsx') ####

  • python matplotlib中文显示参数设置解析

    最近在学习python著名的绘图包matplotlib时发现,有时候图例等设置无法正常显示中文,于是就想把这个问题解决了. PS:本文仅针对Windows,其他平台仅供参考. 原因 大致就是matplotlib库中没有中文字体. 我安装的anaconda,这是对应的matplotlib的字体所在文件夹(怎么找到matplotlib配置文件夹所在,下面解决方案会叙述,easyman~). C:\Anaconda64\Lib\site-packages\matplotlib\mpl-data\fon

  • python re模块findall()函数实例解析

    本文研究的是re模块findall()函数的相关内容,首先看看实例代码: >>> import re >>> s = "adfad asdfasdf asdfas asdfawef asd adsfas " >>> reObj1 = re.compile('((\w+)\s+\w+)') >>> reObj1.findall(s) [('adfad asdfasdf', 'adfad'), ('asdfas asd

  • Python partial函数原理及用法解析

    这篇文章主要介绍了Python partial函数原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 介绍 partial其实是Python模块functools中定义的一个函数,当我们需要经常调用某个函数时,但是其中某些参数是已知的固定值,这样可能会让代码显得冗余,这个时候就可以考虑使用partial函数. 使用 假设我们要做二进制转十进制 int('1000000', base=2) # 64 int('1010101', bas

  • python Matplotlib模块的使用

    一.Matplotlib简介与安装 Matplotlib也就是Matrix Plot Library,顾名思义,是Python的绘图库.它可与NumPy一起使用,提供了一种有效的MATLAB开源替代方案.它也可以和图形工具包一起使用,如PyQt和wxPython. 安装方式:执行命令 pip install matplotlib 一般常用的是它的子包PyPlot,提供类似MATLAB的绘图框架. 二.使用方法 1.绘制一条直线 y = 3 * x + 4,其中 x 在(-2, 2),取100个点

  • python argparse模块传参用法实例

    目录 前言 传入一个参数 操作args字典 传入多个参数 改变数据类型 位置参数 可选参数 默认值 必需参数 前言 argsparse是python的命令行解析的标准模块,内置于python,不需要安装.这个库可以让我们直接在命令行中就可以向程序中传入参数并让程序运行. 港真的,今天是我第一次学习argsparse.因为用不到,自然也就没有学习的动力.但是现在电脑有点卡,每次打开pycharm太卡了,逼得我不得不开始使用命令行来测试代码. 传入一个参数 我们先在桌面新建“arg学习”的文件夹,在

  • python+matplotlib实现礼盒柱状图实例代码

    演示结果: 完整代码: import matplotlib.pyplot as plt import numpy as np from matplotlib.image import BboxImage from matplotlib._png import read_png import matplotlib.colors from matplotlib.cbook import get_sample_data class RibbonBox(object): original_image =

  • Python XlsxWriter模块Chart类用法实例分析

    本文实例讲述了Python XlsxWriter模块Chart类用法.分享给大家供大家参考,具体如下: 一 点睛 Chart类是XlsxWriter模块中图表组件的基类,支持的图表类型包括面积.条形图.柱形图.折线图.饼图.散点图.股票和雷达等,一个图表对象是通过Workbook(工作簿)的add_chart方法创建,通过 {type,'图表类型'}字典参数指定图表的类型,语句如下: chart = workbook.add_chart({type, 'column'}) #创建一个column

  • python re模块的高级用法详解

    总结 以上所述是小编给大家介绍的python re模块的高级用法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对我们网站的支持!

随机推荐