自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (2)
  • 收藏
  • 关注

原创 xarray.apply_ufunc()用法示例

可以看到,生成了3个。

2024-07-10 10:48:43 280 1

原创 Python判断当前运行环境是否是jupyter notebook

在notebook环境中运行时,会有一个内置的。来判断是否是notebook环境。文件中执行,则会报错。而如果这段代码直接在。

2024-02-04 15:05:10 984

原创 拉格朗日对偶方法求解线性规划

求偏导数并令其等于零,我们可以求得最优的。将这些表达式代入拉格朗日函数,得到对偶函数。带入这些表达式,得到原始问题的最优解。构建拉格朗日函数,格式为目标函数加上带。通过之前求解拉格朗日函数的最优解关于。求偏导数并令其等于零,得到最优解。通过解这个方程组,我们可以得到。通过对拉格朗日函数对。通过对拉格朗日函数对。在这个例子中,很显然。

2023-12-22 10:52:11 1348

原创 求解仿射变换矩阵

仿射变换是图形学中经常用到的方法,通常但是仿射变换的系数是未知的,需要找到变换前后的三对对应点进行求解。

2023-10-21 09:28:56 837

原创 Latex伪代码中函数的写法

网上找了几篇将Latex伪代码写法的文章,但是关于函数名的写法都不太清楚,由于很多算法需要递归实现,写函数名又是必不可少的,自己去翻阅了。

2023-10-05 18:50:17 3122

原创 python图像裁剪

【代码】python图像裁剪。

2023-09-01 16:27:42 292

原创 Pandas连接多个数据帧

将多个数据帧连接,这几个数据帧可能有不一样的长度,并且数据的排列顺序不固定。

2023-08-17 14:23:38 134

原创 SWIG使用方法

软件包,解压到合适的位置,然后将路径添加到环境变量即可。编译完成后,仅需保留。

2023-08-12 20:31:49 434

原创 Python遍历文件夹

【代码】Python遍历文件夹。

2023-07-21 19:38:12 160

原创 Cargo 快速配置镜像源

首先用cargo 安装crm 工具。文件,并自动选择最优镜像源。

2023-05-31 17:27:58 661

原创 vitepress添加脚注插件

然后再文档中使用markdown脚注语法,如。就可以看到脚注渲染了。

2023-03-19 22:15:21 420 1

原创 安装boost

安装boost从官网下载并解压到适当位置Boost网站在解压后的目录中找到bootstrap.bat点击运行,并等待结束这时会出现b2.exe文件,点击运行,耐心等待结束(安装后产生的文件会占据大约4.3GB,请确保磁盘空间充足)cmake 配置示例文档地址只寻找头文件find_package(Boost 1.36.0)if(Boost_FOUND)include_directories(${Boost_INCLUDE_DIRS})add_executable(foo foo.cc

2022-05-26 17:14:45 2020

原创 Armadillo安装

Armadillo是一个矩阵运算的库Armadillo安装下载地址http://arma.sourceforge.net/download.html解压到适当位置即可cmake 引入参考文档https://cmake.org/cmake/help/latest/module/FindArmadillo.htmlcmake_minimum_required(VERSION 3.21)project(test_0_1)set(CMAKE_CXX_STANDARD 17)set(ARMA

2022-05-26 17:10:09 359

原创 PyQt5 制作帮助文档查看器

帮助文档查看器是很多程序中必备要素,而利用Qt中的QTreeView组件可以很方便的查看文件,而QTextBrowser可以直接显示格式化的MarkDown文本。因此可以利用这两个组件制作一个帮助文件查看器。本程序的文件结构如下:.├── main.py└── ui └── docViewer.ui└── docs --这里放帮助文档 ├── a.md ├── b.md └── c.md # 保存用户文件的文件夹运行界面Python代码from PyQt5

2022-05-07 19:56:24 1533

原创 Haskell列表操作

Haskell列表操作

2022-05-07 11:21:53 508

原创 Qt实现判断鼠标左右键信号

Qt按钮自带的信号非常简单,并不能区分鼠标左右键,但是实际上Qt组件的功能很强大,只是将区分按键的功能隐藏了。要实现这个功能,就需要自定义信号,然后重载mousePressEvent()函数。//// Created by w on 2022/4/7.//#ifndef MYBUTTON_H#define MYBUTTON_H#include <QObject>#include <QPushButton>#include <QMouseEvent&gt

2022-04-15 09:38:53 6894 1

原创 Haskell 开发平台安装及Hello World

1 下载stack安装Haskell开发环境首先要安装管理工具stack,在官网找到并下载,也可以直接下载下面的链接:https://get.haskellstack.org/stable/windows-x86_64-installer.exe然后执行安装,如果安装过程中出现“add to PATH”的选项,一定要勾选。2 修改配置安装stack之后要修改它的配置,配置文件路径一般是:C:\sr\config.yaml 。用下面的文本替换原来的文本。# This file contains

2022-03-31 09:07:34 1694

原创 python socket 通信(2) 协程实现多人聊天室

在服务端,使用python官方的asyncio模块,利用asyncio.start_server方法生成服务器,对每个连接采取分而治之的思路,用协程方法同时侦听多个端口。客户端采用多线程,用两个线程分别运行接收机和发信机。服务端#server.pyimport asyncio# 连接表coonlist = []# 广播机async def boarder(message: str, coonlist=coonlist): for writer in coonlist:

2022-02-12 12:44:11 1542

原创 python socket 通信(1)

# 服务端.pyimport socket# 建立一个服务端server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)server.bind(('localhost',10000)) #绑定要监听的端口server.listen(5) #开始监听 表示可以使用五个链接排队print("服务已开启,地址:localhost,端口:10000")while True:# conn就是客户端链接过来而在服务端为期生成的一个链接实例 c

2022-02-11 13:05:10 1242

原创 JS大地测量库geodesy的使用方法

geodesy 是对大地椭球体表面点进行运算的库。可以计算地表两点间的最短距离和路径。或已知距离和方位求终点,并且可以对结果进行格式化输出。使用方法在页面中使用<!doctype html><title>geodesy example</title><meta charset="utf-8"><script type="module"> import LatLon from 'https://cdn.jsdelivr.net/npm

2022-02-06 11:19:27 1270

原创 Nodejs better-sqlite3基本操作

Nodejs平台上操纵sqlite数据库的工具,语法简洁,运行效率高。

2022-01-17 13:53:19 7730 3

原创 C语言长整型除法

#include <stdio.h>#include <stdlib.h>/* run this program using the console pauser or add your own getch, system("pause") or input loop */double divide(long numerator,long denominator);int main(int argc, char *argv[]) { long a=11113431

2022-01-12 17:28:17 1051

原创 python 调用C语言DLL的方法

生成DLL文件这里使用的开发工具是Dev C++,详细方法可以查看下面这篇文章:Dev c++工具将C代码生成dll文件以及如何调用dll文件需要注意的一点是,64位python解释器只能调用64位的dll文件,因此需要安装64位编译器来编译C代码。新建DLL项目点击文件->新建->项目,选择DLL,语言选择C项目,然后选择名称和保存位置。编写函数代码新项目会默认生成dllmain.c和dll.h两个文件,dll.h中声明了一个函数名,dllmain.c则包含了函数的具体内容,修

2022-01-11 11:02:55 5731 3

原创 Python 用装饰器便捷实现多线程

python在新建线程的时候,每次都要将函数封装成threading对象才能执行,考虑到python还提供了装饰器功能,不如把这两个功能结合一下,以后再编写需要新建线程运行的函数时,直接@一下装饰器就可以了。import threadingimport timedef new_thread(func): def inner(*args, **kwargs): # print(f'函数的名字:{func.__name__}') # print(f'函数的位置参

2022-01-09 21:22:48 1572

原创 FastAPI 对用户文件的管理(上传、下载、删除)

本文将阐述利用FastAPI及相关组件,尤其是数据库工具,对用户上传的文件进行管理的方法。为了更好的理解本文,强烈建议您先阅读《FastAPI集成SQLAlchemy实现数据库操作》。FastAPI 文件上传和下载方法简单的文件上传这里通过File, UploadFile两个模块,实现文件的上传和保存,并且可以一次保存多个文件。from fastapi import File, UploadFile@app.post("/uploadfiles/")async def create_uploa

2022-01-07 21:37:59 4766

原创 Vue3+ Naive UI做一个行政区选择器

行政区信息的获取这里用到的行政区信息是从高德开放平台获取的,地址是:https://developer.amap.com/api/webservice/guide/api/district如果信息只需要获取一次的话,其实并不需要注册,直接页面下方的服务示例中查询就可以:打开开发人员工具,再次点击查询按钮,这时再开发人员工具的“网络”界面中,会看到刚刚发出来一条查询请求:右键选中这条请求记录,选择“复制响应”,然后打开记事本或者其他编辑器,就可以保存查询结果了。组件编写保存成数据对象打

2022-01-06 10:58:03 3298 3

原创 省级国土空间基础信息平台建设方案分析

简介:2020年,各省根据要求建立了省级国土空间基础信息平台,各省采用了不同的解决方案,实现了相似的架构模式。笔者通过对这些经验的总结,梳理出建设空间大数据平台的常用方法和工具。另外,平台建设中对ArcGIS系统的高度依赖,也暴露出我国相关领域技术的不足。关键词:大数据平台;国土空间;0 引言2017年7月,国土资源部下发了《国土空间基础信息平台建设总体方案》和《省级国土空间基础信息平台建设要求》,《要求》指出利用 4 年的时间,全面完成省级国土空间基础信息平台建设,在2020年形成功能完善、持续服务

2021-12-22 16:15:51 1602 1

原创 前端直接读取文本文件内容

前端读取文本并直接展示<template> <label class="text-reader"> <input type="file" @change="loadTextFile"> </label> <pre>{{ fileContent }}</pre></template><script lang="ts">export default { name: "upload",

2021-12-14 20:37:52 3315

原创 FastAPI集成SQLAlchemy实现数据库操作

官方教程原文https://fastapi.tiangolo.com/zh/tutorial/sql-databases/SQLAlchemy的更多操作方法详见https://www.osgeo.cn/sqlalchemy/orm/tutorial.html目录结构官方教程中,main.py放在sql_app文件夹下,考虑到一般习惯,本文将main.py文件放在与sql_app文件夹相同的位置。结构如下:.├── main.py└── sql_app ├── __init__.py

2021-12-12 12:40:15 11389 4

原创 Python实现表格转shapefile方法

1. 需求分析将带有坐标和参数的表格信息(.xls,.xlsx)转换成地图图层(.shapefile)。封装好的exe文件下载地址:https://download.csdn.net/download/ashtyukjhf/195897402. 依赖模块2.1 表格读取Python用于表格读取的模块很多,由于此项目功能要求简单,只需要读取表格中的文本内容即可,应当选择尽量轻量级的模块,这里选用xlrd进行表格的读取,需要注意版本为“1.2”。安装时输入:pip install xlrd==1

2021-12-06 08:09:50 695

原创 原生JS转Vue格式的思路

最近用Vue 转写原生js 的代码遇到很多坑,但是只要转变思路,很多问题就能迎刃而解。

2021-12-05 10:00:32 6009 1

原创 Vite Vue项目加载Cesium模块

1 创建项目选择一个文件夹,打开PowerShell,输入yarn create vite根据提示选择项目名称和使用语言(这里选用Vue + ts)。进入刚刚创建的文件夹,重新打开PowerShell,输入:yarn add cesium待命令执行完成之后,输入yarn run dev即可预览项目。2 配置CesiumVite项目配置Cesium支持非常简单,只需要在index.html 中引入Cesium的样式表和脚本即可。<!DOCTYPE html><h

2021-11-21 17:52:16 1310

原创 Vue工程引入openlayers组件的方法

1. 环境配置npm install vuenpm install vite2. 启动项目找到要创建项目的文件夹,打开Power Shell。输入yarn create vite开始创建Vue项目,更加提示,输入项目名称,然后选择开发框架为Vue。进入刚刚创建的文件夹,输入yarn add ol输入yarn run dev即可试运行刚刚生成的项目。3.创建组件用VS Code加载项目文件夹。在../src/components/文件夹下新建Vue文件,这里命名

2021-11-21 10:48:43 3147 1

原创 前后端分离项目中,前端请求的常见问题

1. 跨域问题一台计算机不同的端口会被识别为不同的域,在后端编写跨域规则时,要注意写明不同的端口。CDN方式引用脚本,会是跨域情况变得复杂,对于需要发送AJAX请求的脚本,请与其他文件保存到同一位置再引用。2.Token携带token字符串放在请求头(Headers)中,格式为'Authorization': 'Bearer ' + Token,例如:axios({ method: "get", url: "http://127.0.0.1:8000/user/me", headers: {

2021-11-19 16:58:01 3754

原创 FastAPI用户安全性解决方案

1.需求分析用户登录验证用户登录保持2.实现思路用户登录和令牌发放用户发送用户名和密码到服务器。服务器检查从数据库中查找用户名和密码哈希值(服务器不保存密码,只保存密码的哈希值)。计算密码哈希值,与服务器中数据一致则进入下一步。生成令牌,令牌内容包括用户名和失效日期,还可以包含其他信息,加密成一段字符串,即Token。服务器将加密后的令牌(Token)返回到前端。前端脚本将令牌保存到LocalStorage。用户登录状态保持前端每次向服务器发送请求,都把令牌放在请求头中。

2021-11-18 21:25:53 5596 2

原创 Python 字典或JSON模拟数据库的增删改查

本文主要想法是通过模拟数据库操作,减少服务后端开发起步阶段的工作量,用于API测试。首先通过python字典类型作为数据表,并在运行中对其进行动态更改。首先,在单独一个文件中创建字典。#文件名:fake_database.pyfake_users_table={ "johndoe": { "username": "johndoe", "full_name": "John Doe", "email": "johndoe@example.com"

2021-11-18 15:17:20 1116

原创 matlab 图像卷积的方法与应用

问题分析内容 1:获取滤波器/卷积核采用 fspecial 函数获取均值滤波器、拉普拉斯算子、prewitt 算子、Sobel算子,并输出显示这些滤波器,可设置合适的参数、尺寸大小。手动设置 Robert 梯度算子、不同方向的检测算子。内容 2:图像边缘检测分别读取./data/worldview4_schiphol.jpg、./data/WorlView2-Newzeland.tif文件,用根据内容 1 中的不同方向(边缘)检测算子,检测不同方向的边缘(由于图像是 RGB 波段

2021-08-15 11:07:57 4313

原创 matlab直方图拉伸、均衡化和匹配

问题分析内容 1:图像增强显示编写一个灰度拉伸函数,实现功能:将原始图像的灰度值以线性方式拉伸到 0-255 之间。读取./data/flower.tif 文件,显示原始图像、原始图像的直方图,然后分别采用上述步骤中编写的函数、imadjust 函数以实现图像增强,并显示图像增强后的效果以及相应的图像直方图。读取./data/mars_moon.tif 文件,显示原始图像、原始图像的直方图,阅读imadjust 函数,理解 gamma 参数的意义,然后设置不同的 gamma 值进行图像增

2021-08-15 11:01:46 4425

原创 Python中文编程

用中文定义一个类:def 显示(字符串:str): print(字符串)class 猫(): def __init__(此,名字:str) -> None: 此.名字=名字 显示(f"猫咪{此.名字}来了") def 叫(此): 显示(f'{此.名字}在喵喵喵') def 吃(此,食物:str): 显示(f'{此.名字}在吃{食物}') def __del__(此):

2021-08-09 07:16:22 688

原创 Python类中的__init__,__del__和__call__方法

__init__是类(class)的构造函数,__call__是对象被调用的默认方法。测试:class foo(): def __init__(self) -> None: print("init") def __call__(self) -> None: print("call")foo()f=foo()f()输出:initinitcall由以上测试可知,直接调用类相当于调用 __init__方法,

2021-07-20 19:30:04 491

Excel表格转shp图层工具

将带有经纬度数据的表格转换成ArcGIS图层点数据。

2021-06-12

高德平台POI获取工具

获取高德平台的POI数据,可以指定某地区的某一类型数据。(已申请权限,不存在违法行为)

2021-05-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除