精华内容
下载资源
问答
  • python matplotlib主副坐标

    千次阅读 2018-11-28 15:00:15
    在excel画图中经常会使用...matplotlib画图针对这种场景需解决方如下: import numpy as np from matplotlib import pyplot as plt plt.rcParams['font.sans-serif']=['SimHei'] plt.rcParams['axes.unicode_minus...

    在excel画图中经常会使用到两个数据放在一个图上,共用x轴两个y轴分别位于两侧。
    matplotlib画图针对这种场景需解决方如下:
    在这里插入图片描述

    import numpy as np
    from matplotlib import pyplot as plt
    plt.rcParams['font.sans-serif']=['SimHei']
    plt.rcParams['axes.unicode_minus'] = False
    x=np.arange(0.1,10,0.01)
    data1=np.exp(x)
    data2=np.log(x)
    fig,ax1=plt.subplots() #subplots一定要带s
    ax1.plot(x,data1,c='r')
    ax1.set_ylabel('EXP')
    ax2=ax1.twinx() #twinx将ax1的X轴共用与ax2,这步很重要
    ax2.plot(x,data2,c='g')
    ax2.set_ylabel('Log')
    plt.show()
    
    展开全文
  • matplotlib 绘制副坐标轴代码效果 代码 import matplotlib.pyplot as plt import numpy as np plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体) plt.rcParams['axes.unicode_minus...

    matplotlib 绘制副坐标轴

    代码

    	import matplotlib.pyplot as plt
    	import numpy as np
    	plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)
    	plt.rcParams['axes.unicode_minus'] = False   # 步骤二(解决坐标轴负数的负号显示问题)
    	
    	
    	x = np.arange(0,10,0.1)
    	y1 = 0.05*x**2
    	y2 = 2*x+1
    	
    	fig,ax1 = plt.subplots()
    	#坐标轴反转
    	ax2 = ax1.twinx()
    	ax1.plot(x,y1,'r-')
    	ax2.plot(x,y2,'b-.')
    	
    	ax1.set_xlabel('横坐标')
    	ax1.set_ylabel('y1纵坐标',color='r')
    	ax2.set_ylabel('y2纵坐标',color='b')
    	
    	plt.show()
    
    
    

    效果

    在这里插入图片描述

    展开全文
  • 日期时间做X轴,设定主副刻度 当X轴为日期时间时,annotate标注功能X轴坐标获取问题,即将x轴所在点的日期时间通过mdates.date2num()转为数字即可。关键代码如下: ax1.annotate("annotate msg ", xy=(mdates.date2...

    1.解决的问题

    • 日期时间做X轴,设定主副刻度
    • 当X轴为日期时间时,annotate标注功能X轴坐标获取问题,即将x轴所在点的日期时间通过mdates.date2num()转为数字即可。关键代码如下:
    ax1.annotate("annotate msg ", xy=(mdates.date2num(x[1]), sales[1]), xycoords='data', color='red')
    

    2.演示代码

    主体代码来源:https://blog.csdn.net/helunqu2017/article/details/78736686,略改

    import matplotlib.pyplot as plt
    import matplotlib.dates as mdates
    from datetime import datetime
    import matplotlib as mpl
    import matplotlib.dates as mdates
    # 销售数据
    dates = [20171101, 20171102, 20171103, 20171104]
    sales = [102.1, 100.6, 849, 682]
    # 将dates改成日期格式
    x = [datetime.strptime(str(d), '%Y%m%d').date() for d in dates]
    # figure布局
    fig = plt.figure(figsize=(8, 4))
    ax1 = fig.add_subplot(1, 1, 1)
    # 绘图
    ax1.plot(x, sales, ls='--', lw=3, color='b', marker='o', ms=6, mec='r', mew=2, mfc='w', label='业绩趋势走向')
    
    # 标注
    ax1.annotate("annotate msg ", xy=(mdates.date2num(x[1]), sales[1]), xycoords='data', color='red')
    
    plt.gcf().autofmt_xdate()  # 自动旋转日期标记
    
    # 设置x轴主刻度格式
    alldays = mdates.DayLocator()  # 主刻度为每天
    ax1.xaxis.set_major_locator(alldays)  # 设置主刻度
    ax1.xaxis.set_major_formatter(mdates.DateFormatter('%Y%m%d'))
    # 设置副刻度格式
    hoursLoc = mpl.dates.HourLocator(interval=6)  # 为6小时为1副刻度
    ax1.xaxis.set_minor_locator(hoursLoc)
    ax1.xaxis.set_minor_formatter(mdates.DateFormatter('%H'))
    # 参数pad用于设置刻度线与标签间的距离
    ax1.tick_params(pad=10)
    
    # 显示图像
    plt.show()
    
    展开全文
  • matplotlib画二维图像时,默认情况下的横坐标和纵坐标显示的值有时达不到自己的需求,需要借助xticks()和yticks()分别对横坐标x-axis和纵坐标y-axis进行设置。 import numpy as np import matplotlib.pyplot as ...
  • matplotlib作图时设置了x轴主副刻度,用plt.xticks()只能旋转刻度坐标,怎样旋转刻度坐标?(刻度是时分秒) ``` fig,ax = plt.subplots(figsize=(8,3),dpi=128) #把刻度线设置在图的里面 plt.rcParams...
  • Matplotlib设置次坐标

    千次阅读 2020-02-23 09:19:03
    分类目录——Matplotlib 有时候可能会有这种需求,一个图中的几条线的y轴范围不同,或者根本不是一个单位,这时可以增加另外一个y轴,标上不同的刻度。 先看效果 导入支持包 import matplotlib.pyplot as plt ...

    原文地址

    分类目录——Matplotlib

    有时候可能会有这种需求,一个图中的几条线的y轴范围不同,或者根本不是一个单位,这时可以增加另外一个y轴,标上不同的刻度。

    • 先看效果

      1582078480634

    • 导入支持包

      import matplotlib.pyplot as plt
      import numpy as np
      
    • 生成测试数据

      x = np.arange(0, 10, 0.1)
      y1 = 0.05 * x**2
      y2 = -1 * y1
      
    • 生成画布

      fig, ax1 = plt.subplots()
      
    • 共用x轴

      ax2 = ax1.twinx()
      
    • 画图

      ax1.set_xlabel('X data')
      # 画基于左轴的曲线
      ax1.plot(x, y1, 'g-')   # green, solid line
      ax1.set_ylabel('Y1 data', color='g')
      # 画基于右轴的曲线
      ax2.plot(x, y2, 'b--') # blue, dashed line
      ax2.set_ylabel('Y2 data', color='b')
      # 出图
      plt.show()
      

      出图结果如文首图所示

    • 同理可以共用一个y轴,甚至次x轴

      y = np.arange(0, 10, 0.1)
      x1 = 0.05 * y**2
      x2 = -1 * x1
      
      fig, ax1 = plt.subplots()
      
      ax2 = ax1.twiny()
      
      ax1.set_ylabel('Y data')
      
      ax1.plot(x1, y, 'g-')   # green, solid line
      ax1.set_xlabel('X1 data', color='g')
      
      ax2.plot(x2, y, 'b--') # blue, dashed line
      ax2.set_xlabel('X2 data', color='b')
      
      plt.show()
      

      出图如下

      1582079157613

    • 参考文献

      程序主要来自 次坐标轴,略有改动

    展开全文
  • 设置最小的刻度,比如刻度为3,而不去设置坐标轴的范围,也是有时候的一些需求。 fig, ax = plt.subplots(1, 1) ax.plot(range(12), range(12)) ax.xaxis.set_major_locator(plt.MultipleLocator(3)) # #把x轴的...
  • 主要介绍了matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 4.4 Matplotlib坐标

    2021-04-21 13:10:01
    Matplotlib常见用法全部OneNote笔记 全部笔记思维导图整理 PyTorch常见用法全部OneNote笔记 全部笔记思维导图整理 Scikit-Learn常见用法全部OneNote笔记 全部笔记思维导图整理 Java相关技术/ssm框架全部笔记 ...
  • 1.横坐标设置时间格式 import matplotlib.pyplot as plt import matplotlib.dates as mdates # 配置横坐标为日期格式 plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y/%m/%d')) plt.gca().xaxis.set_...
  • 图中图 次坐标轴 两个Y轴怎么画
  • python matplotlib作图,需添加副坐标轴,我按网上方法试了下,发现副坐标轴对不上 数据在这里下载: https://pan.baidu.com/s/1d1QnnypYb70pnbxq0zM17g 密码:wwww #导入库 import pandas as pd import ...
  • 当我们想要使用坐标系来表示数据的关系时,往往需要给坐标系进行命名,比如物理学上的时间-距离曲线,就会把X轴命名为时间,Y轴命名为距离,这样画出来的曲线就是时间-距离曲线。当我们想表示收入-时间曲线时,可以...
  • python matplotlib绘图设置坐标轴刻度、文本

    万次阅读 多人点赞 2016-07-17 22:08:33
    总结Matplotlib绘图如何设置坐标轴刻度大小和刻度。 上代码: from pylab import * from matplotlib.ticker import MultipleLocator, FormatStrFormatter xmajorLocator = MultipleLocator(20) #将x刻度标签...
  • 其实就是在设置刻度的基础上,在添加一个列表,来显示...import matplotlib.pyplot as plt import numpy as np # 数据 x = np.linspace(-10, 10, 100) y = x**2 # 绘图 plt.plot(x, y) # 设置轴的刻度 plt.xtic...
  • 由于总量数据过大,不太适合与拆分的维度使用同一坐标轴展示,所以对于总量使用主坐标轴,拆分的细分维度均使用次坐标轴。 这是使用同一个坐标轴的结果: 知识点1:subplots() plt.subplots()可以创建一张画布和一...
  • from matplotlib import pyplot as plt file_path=r'C:\Users\YSRD-B-0281\Desktop\forth.csv' with open(file_path) as f: reader=csv.reader(f) header_row=next(reader) dates,ohs=[],[] for row in ...
  • matplotlib命令与格式:tick坐标主副刻度设置

    万次阅读 多人点赞 2017-12-06 23:52:26
    1.刻度定位器与格式(Tick Locator) Tick locating 与 Tick formatting 可...Matplotlib 中的 ticker 模块用于支持坐标轴刻度的修改,调用下列命令可以初步查看主副坐标轴刻度的数值定位方式(locator)与具体格式(f
  • 1.刻度定位器与格式(Tick Locator) Tick locating 与 Tick formatting ...Matplotlib 中的 ticker 模块用于支持坐标轴刻度的修改,调用下列命令可以初步查看主副坐标轴刻度的数值定位方式(locator)与具体格式(for...
  • 次坐标轴也被称为第二坐标轴或副坐标轴,用于在一个图形中显示两个不同坐标尺度的图表。 twinx函数 twinx函数的功能为创建并返回一个共享x轴的子图。 twinx函数的签名为matplotlib.pyplot.twinx(ax=None)。参数ax的...
  • ax.tick_params(direction='in',width=0.5,length=2,color='g')只能设置个别的刻度线能...[图片说明](https://img-ask.csdn.net/upload/201903/21/1553170165_436345.png)我想让所有的刻度线都在坐标轴里面该怎么设置呢
  • #!/usr/bin/env python #-*- coding: utf-8 -*- ...#演示MatPlotLib中设置坐标刻度标签和次刻度标签. #对于次刻度显示,如果要使用默认设置只要matplotlib.pyplot.minorticks_on() #-----...
  • 设置日期主副刻度
  • 日期时间做X轴,设定主副刻度 当X轴为日期时间时,annotate标注功能X轴坐标获取问题,即将x轴所在点的日期时间通过mdates.date2num()转为数字即可。关键代码如下: ax1.annotate("annotate msg ", xy=(mdates.date...
  • Python 之 matplotlib (十五)主次坐标

    千次阅读 2018-04-25 07:58:14
    代码:import matplotlib.pyplot as plt import numpy as np x = np.arange(0, 10, 0.1) y1 = 0.05 * x ** 2 y2 = -1 * y1 fig, ax1 = plt.subplots() ax2 = ax1.twinx() ax1.plot(x, y1, 'g-') ax2.plot(x, y2, '...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,461
精华内容 584
关键字:

matplotlib主副坐标