zoukankan      html  css  js  c++  java
  • matplotlib使用的问题

    一、中文显示乱码

    在matplotlib中使用中文显示乱码,需要使用下面的代码来正常显示中文

    plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签

    二、正负号显示

    matplotlib中会出现显示负号错误的问题

    plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

    三、内容显示

    3.1 放置标签

    for x, y in operator_id:
        # 显示标签,bar图可以使用,x,y是整数注意摆放位置
        plt.text(x + 0.05, y + 0.05, '%d' % y, ha='center', va='bottom')    

    3.2 设置标签

    plt.title("k-meas聚类分析")  # 设置图片的标题
    plt.xlabel('user_id')  # 设置横坐标的标签值
    plt.ylabel('user_action')  # 设置纵坐标的标签值
    plt.grid()  # 设置网格
    # bbox_to_anchor:表示放置标签的位置
    # plt.legend(loc=2),可以用数字表示标签内放的位置
    plt.legend(loc="center left", bbox_to_anchor=(1, 0.9), ncol=1)  # 标签外放

    3.3 mark内容

    mark的类型地址如下:https://matplotlib.org/api/markers_api.html#module-matplotlib.markers

    四、刻度设置

    使用以下的方法在matplotlib中设置区间范围

    import matplotlib.pyplot as plt
    plt.ylim(30, 60)   # 设置y的范围
    plt.xlim(30, 60)   # 设置x的范围 

    五、箭头绘制

    使用以下的代码可以在matplotlib中绘制箭头

    import matplotlib.pyplot as plt
    # 参数意义:x的位置,y的位置,x的偏移量,y的偏移量,箭头宽,线宽,颜色
    plt.arrow(x_2020[x + 1], y + 2.5, 0, 3.5, head_width=0.1, linewidth=6, color="red")

    六、文本插入

    使用以下的代码可以完成相应的文本插入

    import matplotlib.pyplot as plt
    # 参数意义:x的位置,y的位置,显示的数,以及位置,下面的是在正上方显示
    plt.text(x_2020[x] + 0.1, y + 0.05, '%.2f' % y, ha='center', va='bottom')

    七、图例的显示

    使用下面的位置来显示图例,同时需要注意使用图例的时候也可以在legend中去声明label,也可以在图像中去声明label

    import matplotlib.pyplot as plt
    # 参数的意义,loc是位置的显示,可使用字符或者是数字代替。、
    # bbox_to_anchor是偏移位置,从自左向右和自底向上的路径进行设置,y的设置(0,1)内是会贴在图片附近,否则就会远离图片
    plt.legend(loc=2, bbox_to_anchor=(0, 0.93))

    八、产生映射的坐标

    我们在有的时候需要两个刻度来显示我们的内容,因此需要使用到两个刻度的问题

    import matplotlib.pyplot as plt
    # 使用下面的两个函数就可以完成相应的设置了
    # 第一个坐标轴,这样就可以在里面编写内容
    ax1 = plt.figure().subplots()
    # 第二个坐标轴
    ax2 = ax1.twinx()

    九、注意

    有时候会出现一些提示,可能原因有以下几点

    1. 图形和设置的大小不一样
    2. 出现了异常的范围:负号、中文等
  • 相关阅读:
    Java实现 LeetCode 617 合并二叉树(遍历树)
    Java实现 LeetCode 611 有效三角形的个数(双指针)
    Java实现 LeetCode 611 有效三角形的个数(双指针)
    Java实现 LeetCode 611 有效三角形的个数(双指针)
    Java实现 LeetCode 609 在系统中查找重复文件(阅读理解+暴力大法)
    Java实现 LeetCode 609 在系统中查找重复文件(阅读理解+暴力大法)
    PHP mb_substr() 函数
    PHP substr() 函数
    PHP strtr() 函数
    PHP strtoupper() 函数
  • 原文地址:https://www.cnblogs.com/future-dream/p/13052348.html
Copyright © 2011-2022 走看看