Matplotlib绘制雷达图和三维图的示例代码

 更新时间:2020-01-07 22:10:57   作者:佚名   我要评论(0)

1.雷达图







程序示例


'''1.空白极坐标图'''
import matplotlib.pyplot as plt

plt.polar()
plt.show()

'''2.绘制一个极坐标点'''
import numpy as np
im

1.雷达图

程序示例

'''1.空白极坐标图'''import matplotlib.pyplot as plt plt.polar()plt.show() '''2.绘制一个极坐标点'''import numpy as npimport matplotlib.pyplot as plt# 极坐标(0.25*pi,20)plt.polar(0.25*np.pi, 20, 'ro', lw=2)  # 'ro'红色圆点plt.ylim(0,50)plt.show() '''3.绘制多个极坐标点'''import numpy as npimport matplotlib.pyplot as plttheta = np.array([0.25,0.5,0.75,1,1.25,1.5,1.75,2])r = [75,60,50,70,50,85,45,70]plt.polar(theta*np.pi, r, 'ro', lw=2)  # 'ro'红色圆点plt.ylim(0,100)plt.show() '''4.链接极坐标点'''import numpy as npimport matplotlib.pyplot as plttheta = np.array([0.25,0.5,0.75,1,1.25,1.5,1.75,2])r = [75,60,50,70,50,85,45,70]plt.polar(theta*np.pi, r, 'ro-', lw=2)plt.ylim(0,100)plt.show() '''5.闭合链接极坐标点'''import numpy as npimport matplotlib.pyplot as plt# 只需在末尾添加一个和起始点重合的点theta = np.array([0.25,0.5,0.75,1,1.25,1.5,1.75,2,0.25])r = [75,60,50,70,50,85,45,70, 75]plt.polar(theta*np.pi, r, 'ro-', lw=2)plt.ylim(0,100)plt.show() '''6.填充颜色'''import numpy as npimport matplotlib.pyplot as plt# 只需在末尾添加一个和起始点重合的点theta = np.array([0.25,0.5,0.75,1,1.25,1.5,1.75,2,0.25])r = [75,60,50,70,50,85,45,70, 75]plt.polar(theta*np.pi, r, 'ro-', lw=2)plt.fill(theta*np.pi, r, facecolor='r', alpha=0.5) # 填充plt.ylim(0,100)plt.show() '''7.绘制成绩雷达图'''import numpy as npimport matplotlib.pyplot as plt courses = ['C++', 'Python', 'Java', 'C', 'C#', 'Go', 'Matlab']scores = [82,100,90,78,40,66,88] datalength = len(scores)angles = np.linspace(0, 2*np.pi, datalength, endpoint=False)  # 均分极坐标 scores.append(scores[0])  # 在末尾添加第一个值,保证曲线闭合angles = np.append(angles, angles[0]) plt.polar(angles, scores, 'rv-', lw=2)plt.thetagrids(angles*180/np.pi, courses, fontproperties='simhei')plt.fill(angles, scores, facecolor='r', alpha=0.4)

 

2.三维图

程序示例

'''1.绘制三维曲线,并设置图例字号'''import matplotlib.pyplot as pltimport numpy as npimport matplotlib as mplimport matplotlib.font_manager as fmfrom mpl_toolkits.mplot3d import Axes3D # 不可缺少 fig = plt.figure()ax = fig.gca(projection='3d')  # 设置图像属性 # 测试数据theta = np.linspace(-4 * np.pi, 4*np.pi, 100)z = np.linspace(-4,4,100) * 0.3r = z**4 + 1x = r*np.sin(theta)y = r*np.cos(theta) ax.plot(x,y,z,'b^-', label='3D 测试曲线')# 设置图例的字体,字号font = fm.FontProperties('simhei')mpl.rcParams['legend.fontsize'] = 10ax.legend(prop=font) plt.show() '''2.绘制三维柱状图,并每个柱子颜色随机'''import numpy as npimport matplotlib.pyplot as pltimport mpl_toolkits.mplot3d x = np.random.randint(0,40,10)y = np.random.randint(0,40,10)z = 80*abs(np.sin(x+y)) ax = plt.subplot(projection='3d') for xx, yy, zz in zip(x,y,z):  color = np.random.random(3)  ax.bar3d(xx, yy, 0, dx=1, dy=1, dz=zz, color=color) ax.set_xlabel('X轴', fontproperties='simhei')ax.set_ylabel('Y轴', fontproperties='simhei')ax.set_zlabel('Z轴', fontproperties='simhei') plt.show()

果博东方以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

  • python使用matplotlib绘制雷达图
  • Python使用matplotlib绘制三维图形示例
  • Python基于matplotlib实现绘制三维图形功能示例

果博东方相关的文章

  • Matplotlib绘制雷达图和三维图的示例代码

    Matplotlib绘制雷达图和三维图的示例代码

    1.雷达图程序示例'''1.空白极坐标图'''import matplotlib.pyplot as plt plt.polar()plt.show() '''2.绘制一个极坐标点'''import numpy as npim
    2020-01-07
  • Mysql8.0使用窗口函数解决排序问题

    Mysql8.0使用窗口函数解决排序问题

    MySQL窗口函数简介MySQL从8.0开始支持窗口函数,这个功能在大多商业数据库和部分开源数据库中早已支持,有的也叫分析函数。什么叫窗口?窗口的概念非常重要,
    2020-01-07
  • 浅谈Python访问MySQL的正确姿势

    浅谈Python访问MySQL的正确姿势

    Py2 时代,访问 MySQL 数据库的模块除了 PyMySQL 和 MySQL-python 之外,还有以速度见长的 Umysql,以及非常小众的 Oursql 模块。进入了 Py3 时代之后,PyMySQL 与时
    2020-01-07
  • Java实现按比抽奖功能

    Java实现按比抽奖功能

    需求是要做几个小游戏的抽奖功能,需要根据不同的游戏有不同的抽奖规则,其中也有很多共性,可归纳为只按奖品占比抽取、奖品占比与奖品数量抽取、分段抽取,为方便起
    2020-01-07
  • 详解vmware14Pro中ubuntu系统界面太小的问题解决

    详解vmware14Pro中ubuntu系统界面太小的问题解决

    1.操作环境vmware14Proubuntu 16.04LTS2.问题描述在使用vmware14Pro安装ubuntu 16.04LTS系统后,屏幕始终比较小,无法根据vmware的变化而变化。3.问题原因
    2020-01-07
  • python全局变量引用与修改过程解析

    python全局变量引用与修改过程解析

    这篇文章主要介绍了python全局变量引用与修改过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下一、引
    2020-01-07
  • pytorch加载自定义网络权重的实现

    pytorch加载自定义网络权重的实现

    在将自定义的网络权重加载到网络中时,报错:AttributeError: 'dict' object has no attribute 'seek'. You can only torch.load from a file that is seekable. P
    2020-01-07
  • python enumerate内置函数用法总结

    python enumerate内置函数用法总结

    这篇文章主要介绍了python enumerate内置函数用法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 enu
    2020-01-07
  • python模拟实现斗地主发牌

    python模拟实现斗地主发牌

    题目:趣味百题之斗地主扑克牌是一种非常大众化的游戏,在计算机中有很多与扑克牌有关的游戏。例如,在Windows操作系统下自带的纸牌、红心大战等。在扑克牌类的游戏
    2020-01-07
  • Laravel5.1 框架表单验证操作实例详解

    Laravel5.1 框架表单验证操作实例详解

    本文实例讲述了Laravel5.1 框架表单验证操作。分享给大家供大家参考,具体如下:当我们提交表单时 通常会对提交过来的数据进行一些验证、Laravel在Controller类中使
    2020-01-07

最新评论