以下是我使用的vscode设置。虽然有些主观,但很实用。
1 主题。我放弃了那些炫酷的主题。我选择了Tokyo Night (Storm)。理由是:它平静、赏心悦目,并且与代码形成了美丽的对比,却又不显得刺眼。
2. 字体。我切换到了 JetBrains Mono ,字体大小为14。它提升了我的可读性。
3. 一些插件扩展。1.Prettier
Prettier 很纯粹,就一个代码格式化工具,并不会做代码质量的检查。
2.GitLens
通过GitLens,我们可以轻松查看提交记录、文件修改记录,以及每行代码的最后一次提交信息。
3.代码检查工具
我的主力语言是python,所以我使用的是Flake8。
禅定模式切换方式: Cmd + K Z
隐藏不必要的界面元素可以帮助开发者专注于代码本身,从而提高工作效率.
最后把vscode配置好就可以去愉快地写代码了,不谢我。
揭开卫星图像的4大误区引言卫星图像是一种既充满未来感又贴近日常生活的科技。我们在高德地图、百度地图的导航中,在天气预报的云图里,甚至在新闻报道的灾害救援地图中,都能看到它的身影。然而,在这些简洁的界面背后,隐藏着复杂的卫星系统、原始数据,以及许多令人惊讶的误解。人们常认为卫星图像总是实时的、高清的,只有财大气粗的机构才能使用。事实远比想象中复杂,也更有趣!在这篇博客中,我们将揭开关于卫星图像的五大常见误解,并带你了解中国在这一领域的独特贡献。
误解1:更高分辨率 = 更好的结果?乍一看,高分辨率的卫星图像似乎是王道——能看清单辆汽车、甚至一片树叶的细节,听起来很酷,对吧?但事实并非总是如此。虽然高分辨率图像(如高分二号卫星提供的亚米级分辨率)确实能捕捉细微细节,但它并不一定适合所有场景。比如,监测中国西北地区大规模的退耕还林项目,或评估长江流域的洪水风险,低分辨率但覆盖范围广的图像(如风云四号或资源三号)往往更实用。这些图像提供多光谱数据和频繁的重访周期,能更高效地分析大范围环境变化。
高分辨率数据的成本高、数据量大,处理起来也更复杂。举个例子,2020年长江洪水期间,中国利用风云卫星 ...
python
未读RustDesk 是一款开源、免费、高性能的远程桌面软件,它允许你通过互联网或局域网远程控制另一台计算机。RustDesk 使用 Rust 语言编写,注重安全性、速度和易用性,提供流畅、可靠的远程桌面体验。 与 TeamViewer 或 AnyDesk 等商业软件不同,RustDesk 不依赖中心化的服务器,而是采用端到端加密技术,直接连接你的设备,确保你的隐私安全。你也可以选择自建中继服务器,进一步提升连接速度和稳定性,并完全掌控你的数据。
RustDesk 的主要特点
开源免费: RustDesk 代码完全开源,可以免费使用,没有任何功能限制或隐藏收费。
跨平台支持: 支持 Windows、macOS、Linux、iOS、Android 等多个平台,实现跨设备远程控制。
高性能和低延迟: 采用高效的编码和传输协议,提供流畅的屏幕传输和低延迟的操作体验。
安全性高: 使用端到端加密技术,保护你的连接和数据安全,防止信息泄露。
易于使用: 界面简洁直观,操作简单易懂,即使是新手也能轻松上手。
自建中继服务器: 可以自行搭建中继服务器,实现更快的连接速度和更高的稳定性。
恰好,我有一台 ...
python
未读引言:当你忘了 Python 的 for 循环你是否曾盯着屏幕,突然忘了 Python 的 for 循环怎么写?是 for i in range() 还是 for item in list?那一刻,你像被语法之光照亮的鹿,茫然无措。
我也有过这样的时刻。在一台新电脑上,还没登录 Copilot、grok、vscode、pycharm,我试图写一个简单的 Python 循环,却发现自己卡住了。依赖 AI 工具的日子让我手指飞快,却让大脑渐渐迟钝。我们敲代码的速度前所未有,但对代码的理解却在退化。自动补全成了习惯,调试却成了噩梦。
在社交媒体上,这种现象并不少见:
“自从用了 AI,我感觉没它我都不会写代码了。”
我们正在培养一代“快手”开发者:交付快,却无法解释代码为何有效。这不是危言耸听,而是现实。AI 工具让我们更快,但也让我们更容易忽视基础。
好消息是,我们可以改变!关键是重新审视:你是真的在学习,还是只在“复制粘贴”?
肌肉记忆的消亡:AI 是把双刃剑编程曾是一门需要反复练习的手艺。你一次次写循环、函数,直到它们烂熟于心。如今,AI 驱动的 IDE 取代了这种重复。听起来很 ...
python
未读常见遥感数据格式概述
地理空间数据有多种格式,每种格式都有其独特的用途和特性。了解这些格式对于有效进行地理空间分析至关重要。以下是对主要地理空间数据格式的概述,分为矢量数据和栅格数据两大类,以及一些新兴的混合格式。
矢量数据格式矢量数据使用点、线和多边形来表示地理特征。以下是一些常见的矢量数据格式:
Shapefile Shapefile 是由 Esri 开发的一种广泛使用的矢量数据格式,尽管它现在是开放标准。它由一组文件组成,包括存储几何数据的 .shp 文件、存储属性数据的 .dbf 文件和存储空间索引的 .shx 文件。Shapefile 因其简单性和跨平台兼容性而广受欢迎,但它有一些限制,例如属性字段名称的长度限制和对复杂几何类型的有限支持。
GeoJSON GeoJSON 是一种基于 JSON(JavaScript 对象表示法)的轻量级格式,用于编码点、线和多边形等地理特征。它因其简单性和与 Web 应用程序的兼容性而广泛用于在线地图和数据共享。GeoJSON 文件是文本文件,易于阅读和编辑,但对于大型数据集可能会变得冗长。
KML(Keyhole Markup Lang ...
Python 以其简洁和易读性闻名,但一些特性初看可能让人摸不着头脑。然而,一旦你掌握了它们,就会发现它们能极大地提升代码的效率和优雅度。让我们一起探索这 10 个看似复杂但能彻底改变编程体验的 Python 功能!
1. 海象运算符 (:=) —— 在表达式内赋值
Python 3.8 引入的海象运算符 (:=) 允许在表达式中直接赋值,减少代码重复。
之前:
data = input("请输入内容:")
if len(data) > 5:
print("输入内容过长!")
之后:
if (data := input("请输入内容:")) and len(data) > 5:
print("输入内容过长!")
海象运算符让循环和条件语句更加简洁,显著提升代码可读性。
2. 生成器 —— 高效的数据流
生成器通过按需计算(惰性求值)实现高效数据处理,非常适合处理大型数据集。
之前(列表推导):
nums = [x**2 for x in range(1000000)] # 占用大量内存!
生成一个 完整的列表(list),所有计算结果会立即存储在内存中。 ...
python
未读向量数据是地理信息系统(GIS)中表示地理特征的主要方式之一。向量数据使用点、线和多边形等几何形状来表示现实世界中的对象,例如城市(点)、道路(线)或湖泊(多边形)。这些几何形状与属性数据(如名称、人口或面积)相关联,允许进行复杂分析。以下是向量 GIS 中一些核心概念和过程,它们是理解和执行地理空间分析的基础。
数据结构向量数据的核心是其数据结构,它定义了地理特征如何在计算机中存储和操作。常见的向量数据结构包括:
点(Point):表示单一位置,使用单一坐标对(x, y)或三维坐标(x, y, z)表示。例如,一个城市可以用经度和纬度坐标表示为点。
线(Line):由一系列有序点连接而成,表示线性特征,如河流或道路。线可以是简单的(仅连接两点)或复杂的(包含多个点形成折线)。
多边形(Polygon):由闭合的线段组成,表示具有面积的特征,如国家边界或湖泊。多边形可以包含“孔”(例如,一个国家内的湖泊)或由多个部分组成(例如,一个由多个岛屿组成的国家)。
这些几何形状通常存储在文件格式(如 shapefile 或 GeoJSON)或空间数据库(如 PostGIS)中。每个特征还与 ...
引言地理空间分析不仅是理解地球现状的工具,更是预测未来、优化决策和模拟复杂现象的关键技术。随着Python生态的快速发展,其在地理空间领域的应用日益广泛,从高级建模到实时数据处理均展现出强大潜力。本文以Python为核心,结合《Learning Geospatial Analysis with Python》的核心技术,深入探讨地理空间建模与实时分析的关键方法,提供可操作的代码示例和最佳实践,助力开发者构建从预测到实时的完整解决方案。
一、高级地理空间建模高级地理空间建模将地理数据转化为预测和决策工具,涵盖植被监测、洪水模拟、路径优化等场景。以下是核心技术及其Python实现:
1. 归一化植被指数(NDVI)计算NDVI是评估植被健康的核心指标,利用卫星影像的红光(Red)和近红外(NIR)波段计算,公式为:[NDVI = \frac{NIR - Red}{NIR + Red}]NDVI值范围为[-1, 1],正值表示健康植被,负值或接近零表示无植被覆盖。
import numpy as np
import rasterio
def calculate_ndvi(red_path ...
Python
未读引言地理空间算法是地理信息系统(GIS)分析的核心,涵盖从基本的距离测量到复杂的空间关系建模等关键操作。这些算法不仅是GIS软件的底层支撑,也是城市规划、物流优化、环境监测等领域的技术基石。参考《Learning Geospatial Analysis with Python》(第五章“Python and Geospatial Algorithms”),本文通过数学原理、Python代码实战和实际案例,深入解析地理空间算法的实现逻辑。
本文将从距离计算入手,逐步扩展到坐标系转换、空间关系建模,并通过一个建筑物-道路连接的复杂案例展示算法应用。此外,我们还将探讨AI辅助开发(如ChatGPT)如何加速地理分析工作流,帮助开发者快速构建高效的GIS解决方案。
一、距离计算的三个维度地理空间距离计算需考虑地球的曲率以及应用场景的尺度。以下是三种常见的距离计算方法,适用于不同场景:
1. 欧几里得距离(平面近似)适用场景:小范围区域(如城市街区或建筑群),可忽略地球曲率。
公式:
Python实现:
from math import sqrt
def euclidean_distance ...
引言地理空间分析作为数据科学与空间科学交叉的前沿领域,正在驱动城市规划、环境保护、灾害响应等众多行业的变革。然而,面对琳琅满目的软件工具、库和平台,开发者尤其是新手往往感到无从下手。本文旨在系统剖析地理空间技术生态的核心架构,揭示关键工具的功能、依赖关系和选型策略,帮助开发者快速构建高效的地理分析能力栈。通过深入理解这些工具的协同机制,读者将能够灵活应对从简单地图可视化到复杂空间计算的各种场景。
本文将从地理空间技术的核心支柱入手,逐层拆解技术生态的构成,结合实际案例和代码示例,展示工具链的典型应用场景,并探讨AI与云计算等前沿技术如何重塑地理分析的未来。
一、地理技术生态的五大支柱地理空间技术生态可以归纳为五个核心功能模块,每个模块都由一系列成熟的工具和库支撑。这些模块共同构成了现代地理信息系统(GIS)的技术基座。
1. 数据访问层数据访问层负责读取、转换和管理多样化的地理数据格式,是地理分析的起点。以下是两个核心工具:
GDAL/OGR:地理数据处理的行业标准,支持超过200种矢量和栅格格式(如GeoJSON、Shapefile、TIFF)。GDAL(栅格)和OGR(矢量)提 ...








