本文主要是介绍利用QGIS作空间图并获得投影坐标和路网密度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
所有代码与解析
首先工具用的QGISQGIS2
(当前QGIS官方版本是QGIS3 ,2已经停止维护,直接用3也是可以的,功能也一样,可能某些功能不太好找而已)
数据包是天津shp文件
使用前先进行一点数据预处理
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')
from bokeh.plotting import figure,show,output_file
from bokeh.models import ColumnDataSource
from bokeh.models import HoverTool
'''
1 加载数据
'''
import os
os.chdir(r'F:\I_love_learning\junior\数据挖掘与数据仓库\课程设计')
df = pd.read_csv('dataxiaoqu3.csv')
df.dropna(inplace = True)'''
2 计算指标
'''data_sale = df[['小区名称','单价','lat','lng']]
data_sale.groupby(by = '小区名称').mean()
data_sale.reset_index(inplace = True)
del data_sale['index']'''
3 导出数据
'''
data_sale.columns = ['name','price','lat','lng']
data_sale['name'] = data_sale['name'] + " "
data_sale.to_csv('xiaoqudatapro.csv')
-
进入后新建项目,点击右下角将WGS84坐标转换为投影坐标,慢慢找即可
再通用里面可以设置一下背景颜色 -
左上角文件页面
找到天津市县界,拖进来
在左下角双击点开刚刚添加进来的图层,在样式里可以调一
下颜色
4. 在左下角选择刚刚添加进来的图层,右键另存为,将坐标系更换为投影坐标系
- 选择矢量网络
选择刚刚转换完坐标的图层,点击从图层更新范围,设置如下
样式里面改一下透明度,结果如下
- 裁剪一下
结果如下 - 合并道路文件
文件夹选择我们给定好的road文件夹,合并后按照上文转换为投影坐标系
8. 合并道路文件,计算道路在单元格内部长度
9. 导入处理好的数据
选择WGS84坐标,然后另存为接着到投影坐标系
10. 计算单元格内房价分布
添加好后我们改一下样式,吧天津县界加进来
图做好了
11.
选则我们计算过均值和线条总长度的图层
13. 双击我们提取过质心的图层,右键打开属性表
双击即可添加到左面
lat同理
然后将数据复制出excel表格,进行接下来的数据分析
这篇关于利用QGIS作空间图并获得投影坐标和路网密度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!