首页 > 编程语言 >Python可视化

Python可视化

时间:2022-10-05 09:33:20浏览次数:58  
标签:plt Python data True 可视化 import folium opts

地图可视化

pyecharts绘制各省市GDP

from pyecharts.globals import ThemeType #引入主题
Map(init_opts=opts.InitOpts(width="1000px", height="600px",theme = ThemeType.DARK)) #添加主题ThemeType.DARK

c = (
    Map(init_opts=opts.InitOpts(width="1000px", height="600px")) #可切换主题
    .set_global_opts(
        title_opts=opts.TitleOpts(title="2019年各省GDP分布图 单位:亿元"),
        visualmap_opts=opts.VisualMapOpts(
            min_=1000,
            max_=110000,
            range_text = ['GDP总量(亿)颜色区间:', ''], #分区间
            is_piecewise=True, #定义图例为分段型,默认为连续的图例
            pos_top= "middle", #分段位置
            pos_left="left",
            orient="vertical",
            split_number=10 #分成10个区间
        )
  )
    .add("GDP",list,maptype="china") #将list传入,地图类型为中国地图
    .render("Map2.html")
)

folium绘制热力图

#folium-热力图
import pandas as pd
import folium
from folium import plugins

data = pd.read_csv('./poi_scenic_spot.csv',encoding='utf-8')
#heatmap1 = folium.Map(location=[23.122373,113.268027], zoom_start=10,control_scale = True) # 绘制地图,确定聚焦点,默认底图(加载慢)
heatmap1 = folium.Map(location=[23.122373,113.268027], zoom_start=10,control_scale = True,tiles='stamen Terrain') #刺激战场底图
#heatmap1 = folium.Map(location=[23.122373,113.268027], zoom_start=10,control_scale = True,tiles='Mapbox Bright') #mapbox底图
#heatmap1 = folium.Map(location=[23.122373,113.268027], zoom_start=10,control_scale = True,tiles='stamentoner') #黑白底图

#heatmap1 = folium.Map(   #高德底图
#     location=[23.122373,113.268027],
#     zoom_start=15,
#     control_scale = True,
#     tiles='http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}',
#     attr='&copy; <a href="http://ditu.amap.com/">高德地图</a>'
#     )

folium.Marker([23.122373,113.268027],popup='<i>J哥</i>',icon=folium.Icon(icon='cloud',color='green')).add_to(heatmap1)  #创建中心标记
heatmap1.add_child(plugins.HeatMap([[row["lat"],row["lon"]] for name, row in data.iterrows()]))  #传入经纬度
heatmap1.save("folium_map1.html")  #生成网页

folium绘制聚合散点图

#folium-聚合散点地图
import pandas as pd
import folium
from folium import plugins

data = pd.read_csv('./poi_scenic_spot.csv',encoding='utf-8')

plotmap1 = folium.Map(location=[23.122373,113.268027], zoom_start=10,control_scale = True,tiles='stamentoner')

folium.Marker([23.122373,113.268027],popup='<p style="color: green">我是J哥</p>',icon=folium.Icon(icon='cloud',color='green')).add_to(plotmap1)  #创建中心标记
plotmap1.add_child(plugins.MarkerCluster([[row["lat"],row["lon"]] for name, row in data.iterrows()]))
plotmap1.save('folium_map2.html')

统计图表

matplotlib

  • 画直方图
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] #设置加载的字体名
plt.rcParams['axes.unicode_minus'] = False #解决保存图像是负号的问题
data['latitude'].plot(ind='hist', bins=100) #直方图
plt.xlabel('Latitude')
plt.title('Latitude Frequency')
plt.show()

Seaborn

  • Seaborn是一个基于matplotlib且数据结构与pandas统一的统计图制作库,旨在以数据可视化为中心来挖掘与理解数据

  • 导入模块

import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline  #在Jupyter中正常显示图形
  • 导入数据
#Seaborn内置数据集导入
dataset = sns.load_dataset('dataset')

#外置数据集导入(以csv格式为例)
dataset = pd.read_csv('dataset.csv')
  • 设置画布
#设置一块大小为(12,6)的画布
plt.figure(figsize=(12, 6))
  • 输出图形
#整体图形背景样式,共5种:"white", "dark", "whitegrid", "darkgrid", "ticks"
sns.set_style('white')

#以条形图为例输出图形
sns.barplot(x=x,y=y,data=dataset,...)
  • 保存图形
#将画布保存为png、jpg、svg等格式图片
plt.savefig('jg.png')
  • 绘制不同类型的图
https://mp.weixin.qq.com/s?__biz=MzAwMjYxNjcwMw==&mid=2456406495&idx=1&sn=c33b23366e7043920868c6fb516de762&chksm=8d5ad5cfba2d5cd9890fd88756c07a9db2ce16d1dbfd688d504d154969cb24d4bd4ce6385319&scene=21#wechat_redirect
  • 相关性分析
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib as mpl
import seaborn as sns
%matplotlib inline
sns.set_style('white')   #设置图形背景样式为白色
df = pd.read_excel("D:\data\地产数据分析\广州二手房.xlsx")
df = df[['室','厅','面积(㎡)','层数','成交单价(元/㎡)']] #选择需要的列
df.rename(columns={'室': 'room', '厅': 'hall', '面积(㎡)': 'area', '层数': 'floor', '成交单价(元/㎡)': 'price'}, inplace=True)
fig,axes=plt.subplots(1,2,figsize=(12,5)) #分成1*2个图表
sns.regplot(x= 'room',y='price',data=df,color='r',marker='+',ax=axes[0])
sns.regplot(x='hall',y='price',data=df,color='g',marker='*',ax=axes[1])

窗口程序

pyqt5

  • 装pyqt5插件
  • 窗口拖拽设计,生成run.ui
  • 编辑run.py,将业务代码的函数调用注册到窗口代码
  • 编辑业务代码,传入窗口程序获取到的参数

标签:plt,Python,data,True,可视化,import,folium,opts
From: https://www.cnblogs.com/z5onk0/p/16755078.html

相关文章

  • python5-eg
    1实例012programmer_1='程序员甲:搞IT太辛苦了,我想换行......怎么办?'3programmer_2='程序员乙:敲一下回车键'4print(programmer_1+'\n'+programmer_2)实......
  • Python 中四舍五入的方法,你真的会吗
    Python的四舍五入,还真有点小麻烦。1、使用round大多数情况下,我们会使用round来保留小数,但这并不符合我们在数学知识里的规则。round(number[,ndigits])round()......
  • 【笨方法学python】ex18 - 命名、变量、代码、函数
    代码如下:点击查看代码#-*-coding:utf-8--*-#命名、变量、代码、函数#thisoneislikeyourscriptswithargvdefprint_two(*args): arg1,arg2=args pri......
  • python装饰器进阶指南
    前言最近一有时间就在整理自己常用的代码片段,并做成了私人pip包,正好整理到了装饰器的部分,所以就想着写篇文章来总结一下。写这篇文章的目的是为了让大家对装饰器有一个更......
  • 【笨方法学python】ex17 - 更多文件操作
    代码如下:点击查看代码#-*-coding:utf-8--*-#更多文件操作fromsysimportargvfromos.pathimportexists#exists模块:将文件名字符串作为参数,如果文件存在,......
  • 【笨方法学python】ex16 - 读写文件
    代码如下:点击查看代码#-*-coding:utf-8--*-#读写文件#close-关闭文件(保存)。#read-读取文件内容,结果可赋值给一个变量。#readline-读取文本文件中的一......
  • python的入门TCP编程
    一、创建TCP服务器创建TCP服务器的流程:使用socket创建一个套接字使用bind绑定IP和端口使用listen让套接字变成可以被动连接使用accept等待客户端的连接使用recv/send接收......
  • 【笨方法学python】ex15 - 读取文件
    代码如下:点击查看代码#-*-coding:utf-8--*-#读取文件fromsysimportargvscript,filename=argvtxt=open(filename)print"Here'syourfile%r:"%f......
  • 【笨方法学python】ex13 - 参数、解包、变量
    代码如下:点击查看代码#-*-coding:utf-8--*-#参数、解包、变量fromsysimportargv#argv是所谓的“参数变量”,是一个非常标准的编程术语。#包含了你传递给......
  • 【笨方法学python】ex14 - 提示和传递
    代码如下:点击查看代码#-*-coding:utf-8--*-#提示和传递fromsysimportargvscript,user_name=argvprompt='>'print"Hi%s,I'mthe%sscript."%(u......