精华内容
下载资源
问答
  • Python绘制气泡图

    2021-04-28 16:26:09
    实现python绘制气泡图,用气泡的不同颜色,不同大小展示信息 代码部分 import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt import matplotlib.pyplot as plt from ...

    实现python绘制气泡图,用气泡的不同颜色,不同大小展示信息

    代码部分

    import numpy as np
    import pandas as pd
    import seaborn as sns
    import matplotlib.pyplot as plt
    import matplotlib.pyplot as plt
    from matplotlib.pyplot import MultipleLocator
    
    def DrawBubble(read_name):#气泡图
        sns.set(style = "whitegrid")#设置样式
        fp = pd.read_excel(read_name)#数据来源
        x = fp['序号']#X轴数据
        y = fp['数值']#Y轴数据
        z = fp['数值']#用来调整各个点的大小s
        import matplotlib
        plt.rcParams['font.sans-serif'] = ['SimHei']
        plt.rcParams['axes.unicode_minus'] = False
    
    
        cm = plt.cm.get_cmap('jet')   #RdYlBu plasma   jet
        fig,ax = plt.subplots(figsize=(30,20))
        #注意s离散化的方法,因为需要通过点的大小来直观感受其所表示的数值大小
        #我所使用的是当前点的数值减去集合中的最小值后+0.1再*1000
        #参数是X轴数据、Y轴数据、各个点的大小、各个点的颜色
        bubble = ax.scatter(x, y , s = 3*np.sqrt(z)* 100, c = z, cmap = cm,vmin = 0,vmax = 25, linewidth = 0.5, alpha = 0.5)
        ax.grid()
        fig.colorbar(bubble)
        #plt.ylim((-1, 126))
        #ax.set_xlabel('people of cities', fontsize = 15)#X轴标签
        ax.set_ylabel('参数出现次数', fontsize = 18)#Y轴标签
        plt.xticks(())
        plt.yticks(())
        for i in range(len(fp['数值'])):  # 为每个气泡做标注
            plt.annotate(fp['数值'][i], xy=(fp['序号'][i], fp['数值'][i]), xytext=(fp['序号'][i]-0.10, fp['数值'][i] - 0.2), fontproperties="Times New Roman")
            plt.annotate(fp['名称'][0], xy=(fp['序号'][0], fp['数值'][0]), xytext=(fp['序号'][0]- 0.52, fp['数值'][0]-1.35), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][1], xy=(fp['序号'][1], fp['数值'][1]), xytext=(fp['序号'][1]- 0.52, fp['数值'][1]+1.1), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][2], xy=(fp['序号'][2], fp['数值'][2]), xytext=(fp['序号'][2]- 0.45, fp['数值'][2]+1.1), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][3], xy=(fp['序号'][3], fp['数值'][3]), xytext=(fp['序号'][3]- 0.42, fp['数值'][3]+1.1), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][4], xy=(fp['序号'][4], fp['数值'][4]), xytext=(fp['序号'][4]- 0.20, fp['数值'][4]+1.1), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][5], xy=(fp['序号'][5], fp['数值'][5]), xytext=(fp['序号'][5]- 0.40, fp['数值'][5]+1.1), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][6], xy=(fp['序号'][6], fp['数值'][6]), xytext=(fp['序号'][6]- 0.35, fp['数值'][6]+1.05), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][7], xy=(fp['序号'][7], fp['数值'][7]), xytext=(fp['序号'][7]- 0.27, fp['数值'][7]+0.95), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][8], xy=(fp['序号'][8], fp['数值'][8]), xytext=(fp['序号'][8]- 0.45, fp['数值'][8]+0.9), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][9], xy=(fp['序号'][9], fp['数值'][9]), xytext=(fp['序号'][9]- 0.36, fp['数值'][9]+1.1), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][10], xy=(fp['序号'][10], fp['数值'][10]), xytext=(fp['序号'][10]- 0.50, fp['数值'][10]+0.95), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][11], xy=(fp['序号'][11], fp['数值'][11]), xytext=(fp['序号'][11]- 0.40, fp['数值'][11]+0.75), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][12], xy=(fp['序号'][12], fp['数值'][12]), xytext=(fp['序号'][12]- 0.80, fp['数值'][12]-0.9), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][13], xy=(fp['序号'][13], fp['数值'][13]), xytext=(fp['序号'][13]- 0.50, fp['数值'][13]+0.75), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][14], xy=(fp['序号'][14], fp['数值'][14]), xytext=(fp['序号'][14]- 0.26, fp['数值'][14]-0.9), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][15], xy=(fp['序号'][15], fp['数值'][15]), xytext=(fp['序号'][15]- 0.64, fp['数值'][15]+0.75), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][16], xy=(fp['序号'][16], fp['数值'][16]), xytext=(fp['序号'][16]- 0.50, fp['数值'][16]-0.9), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][17], xy=(fp['序号'][17], fp['数值'][17]), xytext=(fp['序号'][17]- 0.75, fp['数值'][17]+0.75), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][18], xy=(fp['序号'][18], fp['数值'][18]), xytext=(fp['序号'][18]- 0.50, fp['数值'][18]-0.9), fontsize=10.2, fontproperties="simhei")
            plt.annotate(fp['名称'][19], xy=(fp['序号'][19], fp['数值'][19]), xytext=(fp['序号'][19]- 0.62, fp['数值'][19]+0.75), fontsize=10.2, fontproperties="simhei")
    
        plt.show()
        #fig.savefig('hah.png', bbox_inches='tight', dpi=800, pad_inches=0.0)
        fig.savefig('液滴.jpg', dpi=800)
    if __name__=='__main__':
        DrawBubble("液滴.xlsx")#气泡图
    
    
    

    运行效果
    后期再加
    欢迎加群:620139909
    在这里插入图片描述

    展开全文
  • 主要为大家详细介绍了python使用Plotly绘图工具绘制气泡图,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • Python绘制气泡图的源码

    千次阅读 2020-09-08 00:18:21
    利用Plotly库绘制出了一张漂亮的气泡图(代表1991年至1997年间中国、日本和美国每年的葡萄产量): 附上源代码: import plotly as py import plotly.graph_objs as go # size列表元素为z值(即葡萄各年的产量...

    带图形界面的最新版本请见https://blog.csdn.net/wokaoyan1981/article/details/108563802)。

    气泡图是一种特殊的散点图。每个气泡的大小与它代表的值成正比,横坐标通常代表年份,纵坐标通常代表分类。

    利用Plotly库绘制出了一张漂亮的气泡图(代表1991年至1997年间中国、日本和美国每年的葡萄产量):

    附上源代码:

    import plotly as py
    import plotly.graph_objs as go
    
    # size列表元素为z值(即葡萄各年的产量,跟气泡大小成正比
    size0 = [10, 14, 16, 18, 20, 42, 64]
    size1 = [100, 30, 70, 85, 30, 42, 64]
    size2 = [50, 22, 30, 65, 70, 66, 60]
    
    trace0 = go.Scatter(
        x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],
        y=['US', 'US', 'US', 'US', 'US', 'US', 'US'],
        mode='markers+text',
        marker=dict(
            color='rgb(150,204,90)',
            size= size0,
            showscale = False,
            ),
        text=list(map(str, size0)),     #气泡上的数字标签,表示各年葡萄产量多少
        textposition='middle center',   #标签位置,居中
    )
    
    trace1 = go.Scatter(
        x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],
        y=['JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN'],
        mode='markers+text',
    
        marker=dict(
            color='rgb(255, 130, 71)',
            size=size1,
            showscale=False,
        ),
        text=list(map(str,size1)),
        textposition='middle center',
    )
    
    trace2 = go.Scatter(
        x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],
        y=['CN', 'CN', 'CN', 'CN', 'CN', 'CN', 'CN'],
        mode='markers+text',
    
        marker=dict(
            color='rgb(255, 193, 37)',
            size=size2,
            showscale=False,
        ),
        text=list(map(str,size2)),
        textposition='middle center',
    )
    
    layout = go.Layout(plot_bgcolor='rgb(10, 10, 10)',  # 图的背景颜色
                       paper_bgcolor='rgb(20, 55, 100)',  # 图像的背景颜色
                       font={               #字体设置
                           'size': 15,
                           'family': 'sans-serif',
                           'color': 'rgb(255, 255, 255)'  # 将全局字体颜色设置颜色为葱绿
                       },
                       width=1000,
                       height=500,
                       xaxis=dict(title='Output of grapes per year in US, JAPAN and CN', ),  # 设置坐标轴的标签
                       showlegend=False,
                       margin=dict(l=100, r=100, t=100, b=100),
                       hovermode = False,       # 停止悬停鼠标显示数值的功能
                       )
    
    data = [trace0, trace1, trace2]
    fig = go.Figure(data=data, layout=layout)
    
    #启动绘图直接绘制figure对象
    py.offline.init_notebook_mode()
    py.offline.plot(fig, filename='basic-scatter.html')

     

    展开全文
  • #绘制气泡图,经纬度定位,气泡颜色代表降水强度 cm = plt.cm.get_cmap('YlGn') size = rain h = plt.scatter(lon, lat, s=5, c=size, cmap=cm, vmin=0, vmax=20) plt.colorbar(h,fraction=0.05, pad=0.05) #...
    #绘制气泡图,经纬度定位,气泡颜色代表降水强度  
    cm = plt.cm.get_cmap('YlGn')
    size = rain
    h = plt.scatter(lon, lat, s=5, c=size, cmap=cm, vmin=0, vmax=20)
    plt.colorbar(h,fraction=0.05, pad=0.05) #fraction系数调节cbar的大小,pad控制色条与子图间距

    色标选择

    https://matplotlib.org/gallery/color/colormap_reference.html#sphx-glr-gallery-color-colormap-reference-py

    c=size 表示颜色按照降水强度进行填色

    vmin和vmax为色标的上下限

    fraction和pad见#的解释

    绘制的图像如下:

    展开全文
  • 利用Plotly库绘制出了一张漂亮的气泡图(代表1991年至1997年间中国、日本和美国每年的葡萄产量):附上源代码:import plotly as pyimport plotly.graph_objs as go# size列表元素为z值(即葡萄各年的产量,跟气泡大小...

    气泡图是一种特殊的散点图。每个气泡的大小与它代表的值成正比,横坐标通常代表年份,纵坐标通常代表分类。

    利用Plotly库绘制出了一张漂亮的气泡图(代表1991年至1997年间中国、日本和美国每年的葡萄产量):

    ff6ab8383f064a56100d2eb4fbd587e9.png

    附上源代码:

    import plotly as py

    import plotly.graph_objs as go

    # size列表元素为z值(即葡萄各年的产量,跟气泡大小成正比

    size0 = [10, 14, 16, 18, 20, 42, 64]

    size1 = [100, 30, 70, 85, 30, 42, 64]

    size2 = [50, 22, 30, 65, 70, 66, 60]

    trace0 = go.Scatter(

    x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],

    y=['US', 'US', 'US', 'US', 'US', 'US', 'US'],

    mode='markers+text',

    marker=dict(

    color='rgb(150,204,90)',

    size= size0,

    showscale = False,

    ),

    text=list(map(str, size0)), #气泡上的数字标签,表示各年葡萄产量多少

    textposition='middle center', #标签位置,居中

    )

    trace1 = go.Scatter(

    x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],

    y=['JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN'],

    mode='markers+text',

    marker=dict(

    color='rgb(255, 130, 71)',

    size=size1,

    showscale=False,

    ),

    text=list(map(str,size1)),

    textposition='middle center',

    )

    trace2 = go.Scatter(

    x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],

    y=['CN', 'CN', 'CN', 'CN', 'CN', 'CN', 'CN'],

    mode='markers+text',

    marker=dict(

    color='rgb(255, 193, 37)',

    size=size2,

    showscale=False,

    ),

    text=list(map(str,size2)),

    textposition='middle center',

    )

    layout = go.Layout(plot_bgcolor='rgb(10, 10, 10)', # 图的背景颜色

    paper_bgcolor='rgb(20, 55, 100)', # 图像的背景颜色

    font={ #字体设置

    'size': 15,

    'family': 'sans-serif',

    'color': 'rgb(255, 255, 255)' # 将全局字体颜色设置颜色为葱绿

    },

    width=1000,

    height=500,

    xaxis=dict(title='Output of grapes per year in US, JAPAN and CN', ), # 设置坐标轴的标签

    showlegend=False,

    margin=dict(l=100, r=100, t=100, b=100),

    hovermode = False, # 停止悬停鼠标显示数值的功能

    )

    data = [trace0, trace1, trace2]

    fig = go.Figure(data=data, layout=layout)

    #启动绘图直接绘制figure对象

    py.offline.init_notebook_mode()

    py.offline.plot(fig, filename='basic-scatter.html')

    展开全文
  • 基于散点图(scatter)的基础上稍加调整就可以变成气泡图。#载入两个库importpandas as pdimport matplotlib.pyplot as plt在Excel上写点数据,这里给个示例绘制散点图:以数量列为横坐标x,以大小列为纵坐标y,此...
  • 这是一个图形“气泡”地图(即带有标记的地图,其大小映射到变量).但是,图例仅显示颜色类别,但不显示尺寸与值的关系.library(plotly)DF = data.frame(Group = c("A", "B", "A", "B", "A", "C", "C"),Value = c(100, 80...
  • Python气泡图

    2021-02-10 17:17:29
    from matplotlib import pyplot as pltimport numpy as npmy_dpi=96plt.figure(figsize=(480/my_dpi, 480/my_dpi), dpi=my_dpi)x = np.random.rand(15)y = x+np.random.rand(15)z = x+np.random.rand(15)z=z*zplt.sc...
  • 可视化实验十一:利用Python绘制气泡图、雷达图

    千次阅读 多人点赞 2021-05-22 15:01:08
    根据步骤二得到的实验数据,绘制气泡图、雷达图 练习如何通过调整参数使图片呈现不同效果,例如颜色、图例位置、背景网格、坐标轴刻度和标记等 实验过程(附结果截图): 1. 练习python中气泡图、雷达图绘图函数的...
  • Python气泡图Bubble

    千次阅读 2020-07-23 20:14:00
    import matplotlib.pyplot as plt import numpy as np my_dpi=96 plt.figure(figsize=(480/my_dpi, 480/my_dpi), dpi... 本文来自:https://github.com/holtzy/The-Python-Graph-Gallery/blob/master/PGG_notebook.py 
  • 今天来讲讲如何使用Python 绘图工具,Plotly来绘制气泡图。 气泡图的实现方法类似散点图的实现。修改散点图中点的大小,就变成气泡图。 实现代码如下: import plotly as py import plotly.graph_objs as go py...
  • python 画散点图与气泡图

    万次阅读 多人点赞 2019-08-23 00:27:15
    散点是数据点在直角坐标系平面上的分布,在统计学的回归分析与预测中经常用到。用横轴代表变量 xxx,纵轴代表变量 yyy,每组数据 (xi,yi)(x_i, y_i)(xi​,yi​) 在坐标系中用一个点表示。 做散点要用到 pyplot...
  • 您可以将一个N随机数数组提供给colormap以获得N随机颜色,然后在调用plt.scatter时将其用作color参数。color可以是与大小和填充列表长度相同的颜色列表,它将分别为每个散点着色。plt.title接受参数y,它将调整标题...
  • 在上一期的公众号文章里,我们通过动态气泡图展示了专利申请与地区经济的关系(动态气泡图:专利申请与地区经济),这其实是借鉴了汉斯·罗斯林的4分钟展示200个国家200年的兴衰历史([每日一图] 看了它,你也会爱上...
  • 今天学习的内容气泡图绘制,这种图与散点图有很多相似之处,所以可以借鉴散点图的代码进行制作。 分步骤解析气泡图绘制方法 1.我们在复杂散点图绘制的基础上对代码进行修改,使之变为气泡图,原始代码如下: ...
  • 导读:什么是气泡图?可以用来呈现哪些数据关系?在数据分析过程中可以解决哪些问题?怎样用Python绘制气泡图?本文逐一为你解答。作者:屈希峰来源:大数据DT(ID:bigdatadt)0...

空空如也

空空如也

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

python绘制气泡图

python 订阅