精华内容
下载资源
问答
  • Documentation of plotly说,使用参数 range 我们可以设置限制,例如 range = [0, 10] 将最小值设置为0,最大值设置为10.根据文档,它可以在图形,布局,场景或x下使用 . 实际上 Scatter 和 Layout 接受 ...

    Documentation of plotly说,使用参数 range 我们可以设置轴的限制,例如 range = [0, 10] 将轴最小值设置为0,最大值设置为10.根据文档,它可以在图形,布局,场景或x轴下使用 . 实际上 Scatter 和 Layout 接受 xaxis 和 yaxis 参数,它们是dicts或 plotly.graph_objs.XAxis 对象,并且可以提供 range 值 . 但是,通过尝试我能想象到的所有变化,它显然无法设置限制 . 此外,第一个子图似乎低于其他子图 . 请参阅下面的最低工作示例,该示例可以在任何Jupyter笔记本中运行 .

    奖金问题:为什么 fill 的 fill 参数无法设置点的填充颜色?

    import plotly

    import plotly.tools

    import plotly.graph_objs

    plotly.offline.init_notebook_mode()

    data = {

    'A': {

    'x': [1.0, 2.0, 6.0, 8.0],

    'y': [34.0, 36.0, 38.0, 40.0],

    's': [0.00416, 0.01125, 0.0038, 0.002]

    },

    'B': {

    'x': [1.0, 1.0, 2.0, 2.0, 1.0, 2.0, 3.0, 2.0, 2.0, 3.0,

    4.0, 2.0, 4.0, 5.0, 6.0, 7.0, 7.0],

    'y': [30.0, 32.0, 32.0, 33.0, 34.0, 34.0, 34.0, 35.0,

    36.0, 36.0, 36.0, 38.0, 38.0, 38.0, 38.0, 38.0, 40.0],

    's': [0.029999999999999999, 0.19625000000000001, 0.070833333333333331,

    0.0079166666666666673, 0.23749999999999999, 0.37708333333333333,

    0.028333333333333332, 0.018749999999999999, 0.51875000000000004,

    0.066666666666666666, 0.02375, 0.0066666666666666671,

    0.012083333333333333, 0.01125, 0.016666666666666666,

    0.0058333333333333336, 0.0275]

    },

    'C': {

    'x': [1.0, 2.0, 1.0, 2.0, 2.0],

    'y': [32.0, 32.0, 34.0, 34.0, 36.0],

    's': [0.029208333333333333, 0.0050000000000000001, 0.03820833333333333,

    0.022833333333333334, 0.029083333333333333],

    },

    'D': {

    'x': [0.0, 1.0, 0.0, 1.0, 1.0, 2.0, 1.0, 2.0, 1.0, 2.0, 3.0, 1.0, 1.0,

    2.0, 3.0, 4.0, 5.0, 6.0, 3.0, 4.0, 5.0, 6.0, 7.0, 6.0, 7.0],

    'y': [30.0, 30.0, 31.0, 31.0, 32.0, 32.0, 33.0, 33.0, 34.0, 34.0, 34.0,

    35.0, 36.0, 36.0, 36.0, 36.0, 36.0, 36.0, 38.0, 38.0, 38.0, 38.0,

    38.0, 40.0, 40.0],

    's': [0.0087500000000000008, 0.050000000000000003, 0.008750000000000000,

    0.013333333333333334, 0.60875000000000001, 0.16666666666666666,

    0.04583333333333333, 0.00070833333333333338, 0.73320833333333335,

    0.54541666666666666, 0.040833333333333333, 0.02, 0.0700000000000,

    0.73124999999999996, 0.1125, 0.066666666666666666, 0.02083333332,

    0.0083333333333333332, 0.027916666666666666, 0.0212500000000000,

    0.070833333333333331, 0.11666666666666667, 0.040833333333333333,

    0.059999999999999998, 0.1125]

    }

    }

    xlim = [0, 9]

    ylim = [13, 60]

    traces = []

    for name in sorted(data.keys()):

    sub = data[name]

    traces.append(plotly.graph_objs.Scatter(x = sub['x'], y = sub['y'],

    mode = 'markers',

    marker = dict(

    size = sub['s'],

    sizemode = 'area',

    sizeref = 0.0001),

    name = name,

    fill = '#333333',

    showlegend = False,

    xaxis = dict(range = xlim),

    yaxis = dict(range = ylim))

    )

    fig = plotly.tools.make_subplots(rows=2,

    cols=2,

    subplot_titles=sorted(data.keys())

    )

    for i, trace in enumerate(traces):

    fig.append_trace(trace, row = i // 2 + 1, col = (i % 2) + 1)

    fig['layout'].update(height = 1000, width = 600, title = main_title,

    xaxis = dict(range = xlim), yaxis = dict(range = ylim))

    plotly.offline.iplot(fig, show_link = False)

    结果如下所示:

    6c93583a-3289-4b88-96c2-4bc583c26daa.png

    展开全文
  • plt添加图例/设置坐标轴尺度

    千次阅读 2020-08-23 15:43:11
    plt添加图例/设置坐标轴尺度

    在这里插入图片描述

    本文是对从入门到放弃:python数据分析系列-matplotlib的补充。
    更多文章,请看博主文章专栏
    关注我,精彩不间断!

    1.添加图例

    在同一图中绘制多条曲线时,为了便于区分和使图像更加专业化,我们通常会给图像添加图例。
    如下:

    import matplotlib.pyplot as plt
    import numpy as np
    
    a = np.arange(10,40,2)
    b = np.arange(40,70,2)
    
    # 传入xy轴参数,默认为y轴;label 指定图例名称
    plt.plot(a,label="a",color="blue")
    plt.plot(b,label="b",color="green")
    
    plt.legend(loc="upper left")  # 设置图例位置
    
    # 指定xy轴 名称
    plt.ylabel("This is Y")
    plt.xlabel("This is X")
    
    # 保存图像 默认png格式,其中dpi指图片质量
    plt.savefig("05.png", dpi=600)
    
    plt.show()  # 展示图片
    

    输入图像如下:
    在这里插入图片描述
    通过在plot(label=" ") 指定图例名称,随后通过legend()的参数指定图例位置,便可对图像添加图例,其中loc参数如下:

    • best
    • upper right
    • upper left
    • lower left
    • lower right
    • right
    • center left
    • center right
    • lower center
    • upper center
    • center

    2.设置xy轴刻度

    上文我们讲述了如何设置图像图例,但是细心的盆友会发现,我们在设置图像x/y轴坐标尺度时是让它自动调整,但有时候我们需要人为的对刻度进行控制。这时候我们可以plt.xticks()/plt.yticks()进行设置:

    import matplotlib.pyplot as plt
    import numpy as np
    
    a = np.arange(10,100)
    b = np.arange(40,130)
    
    # 设置x/y轴尺度
    plt.xticks(a[::5])
    plt.yticks(b[::10])
    
    # 传入xy轴参数,默认为y轴;label 指定图例名称
    plt.plot(a,label="a",linestyle="--",color="blue")
    plt.plot(b,label="b",color="green")
    
    plt.legend(loc="best")  # 设置图例位置
    
    # 指定xy轴 名称
    plt.ylabel("This is Y")
    plt.xlabel("This is X")
    
    # 保存图像 默认png格式,其中dpi指图片质量
    plt.savefig("05.png", dpi=600)
    
    plt.show()  # 展示图片
    

    图像如下:
    在这里插入图片描述

    展开全文
  • 不设置上下限,曲线都跑出关注区域了。。。 参考文章:matplotlib 设定坐标的上下限:matplotlib.pyplot.xlim

    在这里插入图片描述
    不设置上下限,曲线都跑出关注区域了。。。
    设置前(5次拟合)
    在这里插入图片描述
    设置后(5次拟合):
    在这里插入图片描述

    参考文章:matplotlib 设定坐标的上下限:matplotlib.pyplot.xlim

    展开全文
  • 一、当我们用Python matplot时作图时,...二、借助matplotlib.ticker.FuncFormatter(),将坐标轴格式化。例子:# encoding=utf-8import matplotlib.pyplot as pltfrom matplotlib.ticker import FuncFormatterplt.r...

    一、当我们用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']

    plt.rcParams.update({'font.size': 8})

    x = range(11)

    y = range(11)

    plt.plot(x, y)

    plt.show()

    图形显示如下:

    20051601689040184635460332.jpg

    现在我们将横纵坐标变成百分比形式即,0%,20%,40%....代码如下:

    # encoding=utf-8

    import matplotlib.pyplot as plt

    from matplotlib.ticker import FuncFormatter

    plt.rcParams['font.family'] = ['Times New Roman']

    plt.rcParams.update({'font.size': 8})

    x = range(11)

    y = range(11)

    plt.plot(x, y)

    def to_percent(temp, position):

    return '%1.0f'%(10*temp) + '%'

    plt.gca().yaxis.set_major_formatter(FuncFormatter(to_percent))

    plt.gca().xaxis.set_major_formatter(FuncFormatter(to_percent))

    plt.show()

    即增加了10~13的代码,执行结果如下:

    20051601689232805426364666.jpg

    可见已经实现我们的需求。

    重要代码

    return '%1.0f'%(10*temp) + '%' #这句话指定了显示的格式。

    补充知识:matplotlib画图系列之设置坐标轴(精度、范围,标签,中文字符显示)

    在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等

    在matplotlib中包含了很多函数,用来对这些参数进行设置。

    plt.xlim、plt.ylim 设置横纵坐标轴范围

    plt.xlabel、plt.ylabel 设置坐标轴名称

    plt.xticks、plt.yticks设置坐标轴刻度

    以上plt表示matplotlib.pyplot

    例子

    #导入包

    import matplotlib.pyplot as plt

    import numpy as np

    #支持中文显示

    from pylab import *

    mpl.rcParams['font.sans-serif'] = ['SimHei']

    #创建数据

    x = np.linspace(-5, 5, 100)

    y1 = np.sin(x)

    y2 = np.cos(x)

    #创建figure窗口

    plt.figure(num=3, figsize=(8, 5))

    #画曲线1

    plt.plot(x, y1)

    #画曲线2

    plt.plot(x, y2, color='blue', linewidth=5.0, linestyle='--')

    #设置坐标轴范围

    plt.xlim((-5, 5))

    plt.ylim((-2, 2))

    #设置坐标轴名称

    plt.xlabel('xxxxxxxxxxx')

    plt.ylabel('yyyyyyyyyyy')

    #设置坐标轴刻度

    my_x_ticks = np.arange(-5, 5, 0.5)

    my_y_ticks = np.arange(-2, 2, 0.3)

    plt.xticks(my_x_ticks)

    plt.yticks(my_y_ticks)

    #显示出所有设置

    plt.show()

    结果

    20051601689373053984774429.jpg

    以上这篇使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

    展开全文
  • How can I set the y axis range of the second subplot to e.g. [0,1000] ?The FFT plot of my data (a column in a text file) results in a (inf.?) spike so that the actual data is not visible.pylab.ylim([0...
  • 在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,...plt.xlim、plt.ylim 设置横纵坐标轴范围  plt.xlabel、plt.ylabel 设置坐标轴名称  plt.xticks、plt.yticks设置坐标轴刻度 以上plt表示ma...
  • How can I set the y axis range of the second subplot to e.g. [0,1000] ?The FFT plot of my data (a column in a text file) results in a (inf.?) spike so that the actual data is not visible.pylab.ylim([0...
  • 1. Python matplotlib 绘制折线图(多子图、坐标轴...坐标轴标红、竖线引出 直接看代码,有注释,根据需要选取 import matplotlib.pyplot as plt # 设置字体格式 font1 = {'family' : 'Times New Roman', 'weight'
  • import matplotlib.pyplot as plt import numpy x = numpy.linspace(-1,2,100) ...#限制坐标x和y的范围 plt.xlim((-1,2)) plt.ylim((-2,4)) #设置横纵坐标轴的名字 plt.xlabel('W') plt.ylabel("X") plt.plot(x,y...
  • https://jingyan.baidu.com/article/6181c3e09f9012542ff153d1.html
  • 完整程序 import matplotlib.pylot as plt import numpy as np y1 = 2*x + 1 y2 = x**2 plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--') ...#x显示范围限制在-1 ~ 2 plt.xlim((-1
  • x=0:0.1:2*pi; %x的取值生成 y=sin(x); %y=sin(x)函数 plot(x,y); %绘制图形 ylim=get(gca,'Ylim');...%[1,1]中,第一个1表示绘制直线的穿过x点,第2个1表示直线穿过y的另个点,由此两点确定想要绘制...
  • 我们首先来介绍坐标轴范围坐标轴范围很好理解,有的时候我们产出的数据的范围可能并不是完全我们想要的。如果我们不对坐标轴范围进行设置的话,那么matplotlib默认会按照我们数据的范围来自动选择它认为最...
  • 1、代码如下 import numpy as np ...import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['Times New Roman'] import matplotlib.ticker as mticker import matplot...
  • python matplotlib.axes相关属性设置(绘图方式、坐标轴、坐标刻度、文本等) 最近在学习python 绘图时,常常使用到这样一个类:matplotlib.axes 其继承关系如下: 为什么要用 ax ,而不是 plt 呢? 因为在绘制子图...
  • 数据可视化函数plt.plot(x,y,ls,lw,c,marker,markersize,...**y:**纵坐标;**ls或linestyle:**线的形式(‘-’,‘–’,‘:’和‘-.’);**lw(或linewidth):**线的宽度;**c:**线的颜色;**m...
  • frameon=True 是否显示四条轴脊 facecolor="y" 填充坐标轴背景的颜色 函数axis() [xmin, xmax, ymin, ymax] 显示坐标轴范围 option,可取值为 'on':打开坐标轴 'off':关闭坐标轴显示 'equal':设置相等的比例,...
  • 本博文源于《python数据可视化》(黑马程序员编著)旨在讲解如何使用python对画出的图表定制出坐标轴、标题、图例、网格、参考线、参考区域、注释文本和表格.
  • import matplotlib.pyplot as plt import numpy as np 2.关于figure图像 #基本用法 x = np.linspace(-1,1,50)#从-1到1,分50份 y1 = 2 * x + 1 y2 = x**2 #figure图像 plt.figure() plt.plot(x,
  • 目录1、set_xlim()、set_ylim()2、 xticks() 、yticks()、set_xlabels()、set_ylabels()3、双坐标轴 1、set_xlim()、set_ylim() Matplotlib会自动得出沿x、y(和z轴,如果是3D图)轴显示的变量的最小值和最大值。...
  • 阅读本文前需知道:matplotlib.pyplot函数 普通坐标刻度 import matplotlib.pyplot as plt y=[pow(10,i) for i in range(0,10)] x=range(0,len(y)) ...纵坐标刻度为10^n import matplotlib.pyplot as plt y=[p...
  • y_major_locator = MultipleLocator(0.5) ax=plt.gca() #ax为两条坐标轴的实例 ax.xaxis.set_major_locator(x_major_locator) #把x轴的主刻度设置为1的倍数 ax.yaxis.set_major_locator(y_major_locator) #把y轴的主...
  • 代码: # -*- coding:utf-8 -*- #matplotlib设置坐标 ...#限制x,y的范围 plt.xlim((-1,2))#x的范围是(-1,2) plt.ylim((-2,3))#y的范围是(-2,3) #xy的标签的描述 plt.xlabel("X") plt.ylabel("Y") #曲线和直线
  • matplot设置xy轴范围

    万次阅读 2016-07-21 10:21:40
    plt.xlim(x1,x2) plt.ylim(y1,y2)
  • import matplotlib.pyplot as plt import numpy as np x = np.linspace(0.05, 10, 1000) # 函数在0.05到10之间均匀地...plt.xlabel('x-axis') # 设置x标签文本 plt.ylabel('y-axis') # 设置y标签文本 plt.legend
  • plt.rcParams['font.sans-serif'] = ['SimHei'] 1 数据,即X值多少,Y值多少。 2 plt.figure(num,figsize) #设置打开画布大小,长10,宽6 plt.figure(figsize=(10,6)) 2.1 #设置图标的标题名称 plt.title("") 3...
  • plt.xlim(dates[0] , dates[-1] ) 方案2: print("线性回归模型") fig, ax = plt.subplots() # 绘制散点图; # G1, G2 = getData2() # ax.scatter(G1[0,:], G1[1,:]) # ax.scatter(G2[0,:], G2[1,:]) #绘制...
  • 可设置'auto', 'equal'或者float值 ax.minorticks_on() # 坐标轴显示小刻度 ax.set_xlim(0, 4) # x轴的刻度范围[0,4] ax.grid(None, which='minor', axis='y') # 设置网格线 # which的可选值有[major, minor, both],...

空空如也

空空如也

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

plt限制坐标轴范围