mirror of
https://forge.chapril.org/tykayn/workflow
synced 2025-10-04 17:04:55 +02:00
up chemins source
This commit is contained in:
parent
123aad138c
commit
8b7acbd6dc
7 changed files with 167 additions and 28 deletions
|
@ -11,10 +11,11 @@ idéalement dans:
|
||||||
# débuter
|
# débuter
|
||||||
Récupérer le script d'initialisation
|
Récupérer le script d'initialisation
|
||||||
```bash
|
```bash
|
||||||
SETUP_WORKFLOW_FOLDER="~/Nextcloud/ressources/workflow_nextcloud/public_workflow"
|
export SETUP_WORKFLOW_FOLDER="$HOME/Nextcloud/ressources/workflow_nextcloud/public_workflow"
|
||||||
mkdir -p "$SETUP_WORKFLOW_FOLDER"
|
mkdir -p "$SETUP_WORKFLOW_FOLDER"
|
||||||
git clone https://forge.chapril.org/tykayn/workflow "$SETUP_WORKFLOW_FOLDER"
|
git clone https://forge.chapril.org/tykayn/workflow "$SETUP_WORKFLOW_FOLDER"
|
||||||
cd "$SETUP_WORKFLOW_FOLDER"
|
cd "$SETUP_WORKFLOW_FOLDER"
|
||||||
|
git pull
|
||||||
bash init.sh
|
bash init.sh
|
||||||
```
|
```
|
||||||
Configrer les variables, avoir le droit d'exécuter des scripts avec `sudo` puis lancer le script d'initialisation
|
Configrer les variables, avoir le droit d'exécuter des scripts avec `sudo` puis lancer le script d'initialisation
|
||||||
|
|
82
analyse_speed_limits_essonne.py
Normal file
82
analyse_speed_limits_essonne.py
Normal file
|
@ -0,0 +1,82 @@
|
||||||
|
import osmnx as ox
|
||||||
|
import pandas as pd
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import networkx as nx
|
||||||
|
|
||||||
|
# 1. Télécharger les routes principales de l'Essonne
|
||||||
|
# On cible les types de routes principales
|
||||||
|
highway_types = ["motorway", "trunk", "primary", "secondary"]
|
||||||
|
|
||||||
|
# Essonne (département 91, France)
|
||||||
|
place = "Essonne, France"
|
||||||
|
|
||||||
|
print("Téléchargement du graphe routier...")
|
||||||
|
G = ox.graph_from_place(place, network_type='drive', custom_filter='["highway"~"motorway|trunk|primary|secondary"]')
|
||||||
|
|
||||||
|
# 2. Extraire les limitations de vitesse et calculer la longueur
|
||||||
|
edges = ox.graph_to_gdfs(G, nodes=False, edges=True)
|
||||||
|
|
||||||
|
# On normalise les limitations de vitesse
|
||||||
|
|
||||||
|
def parse_maxspeed(val):
|
||||||
|
# Si c'est une liste ou un array, on prend le premier élément
|
||||||
|
if isinstance(val, (list, tuple)):
|
||||||
|
if len(val) == 0:
|
||||||
|
return None
|
||||||
|
val = val[0]
|
||||||
|
if pd.isna(val):
|
||||||
|
return None
|
||||||
|
try:
|
||||||
|
# On ne garde que le nombre
|
||||||
|
return int(str(val).split()[0])
|
||||||
|
except Exception:
|
||||||
|
return None
|
||||||
|
|
||||||
|
edges['maxspeed_norm'] = edges['maxspeed'].apply(parse_maxspeed)
|
||||||
|
|
||||||
|
# Calcul de la longueur en km
|
||||||
|
edges['length_km'] = edges['length'] / 1000
|
||||||
|
|
||||||
|
# 3. Statistiques
|
||||||
|
speed_stats = edges.groupby('maxspeed_norm')['length_km'].sum().reset_index()
|
||||||
|
speed_stats = speed_stats.rename(columns={'maxspeed_norm': 'limitation_vitesse', 'length_km': 'longueur_km'})
|
||||||
|
|
||||||
|
# Combien de km sans limitation ?
|
||||||
|
no_speed = edges[edges['maxspeed_norm'].isna()]['length_km'].sum()
|
||||||
|
|
||||||
|
# Remplacer les NaN par -1 pour les routes sans limitation spécifiée
|
||||||
|
speed_stats['limitation_vitesse'] = speed_stats['limitation_vitesse'].fillna(-1).astype(int)
|
||||||
|
|
||||||
|
# 4. Export CSV
|
||||||
|
speed_stats.to_csv('limitations_vitesse_essonne.csv', index=False)
|
||||||
|
|
||||||
|
# 5. Graphique SVG
|
||||||
|
fig, ax = plt.subplots(figsize=(12, 12))
|
||||||
|
# Routes avec limitation: gris, sans limitation: rouge
|
||||||
|
edges_with_speed = edges[edges['maxspeed_norm'].notna()]
|
||||||
|
edges_no_speed = edges[edges['maxspeed_norm'].isna()]
|
||||||
|
|
||||||
|
edges_with_speed.plot(ax=ax, linewidth=0.7, color='grey', alpha=0.5)
|
||||||
|
edges_no_speed.plot(ax=ax, linewidth=1.2, color='red', alpha=0.8)
|
||||||
|
|
||||||
|
ax.set_title("Routes principales de l'Essonne sans limitation de vitesse (en rouge)")
|
||||||
|
ax.axis('off')
|
||||||
|
plt.tight_layout()
|
||||||
|
plt.savefig('routes_sans_limitation_essonne.svg', format='svg')
|
||||||
|
|
||||||
|
# 5b. Histogramme des limitations de vitesse
|
||||||
|
plt.figure(figsize=(10,6))
|
||||||
|
plt.bar(speed_stats['limitation_vitesse'].astype(str), speed_stats['longueur_km'], color='skyblue', edgecolor='black')
|
||||||
|
plt.xlabel('Limitation de vitesse (km/h)')
|
||||||
|
plt.ylabel('Longueur totale (km)')
|
||||||
|
plt.title("Histogramme des limitations de vitesse sur les routes principales de l'Essonne")
|
||||||
|
plt.tight_layout()
|
||||||
|
plt.savefig('histogramme_limitations_vitesse_essonne.png')
|
||||||
|
print("Histogramme sauvegardé sous histogramme_limitations_vitesse_essonne.png")
|
||||||
|
|
||||||
|
# 6. Résumé console
|
||||||
|
print("\nRésumé:")
|
||||||
|
print(speed_stats)
|
||||||
|
print(f"\nLongueur totale sans limitation de vitesse: {no_speed:.2f} km")
|
||||||
|
print("CSV sauvegardé sous limitations_vitesse_essonne.csv")
|
||||||
|
print("SVG sauvegardé sous routes_sans_limitation_essonne.svg")
|
|
@ -5,7 +5,11 @@
|
||||||
#
|
#
|
||||||
# load variables
|
# load variables
|
||||||
# echo "bash custom aliases: load functions to sync files"
|
# echo "bash custom aliases: load functions to sync files"
|
||||||
source $HOME/Nextcloud/ressources/workflow_nextcloud/public_workflow/workflow_variables.sh
|
source "$HOME/Nextcloud/ressources/workflow_nextcloud/public_workflow/workflow_variables.sh"
|
||||||
|
source "$HOME/Nextcloud/ressources/workflow_nextcloud/secrets_vars.sh"
|
||||||
|
source "$WORKFLOW_PATH/install/functions_sync.sh"
|
||||||
|
source "$WORKFLOW_PATH/install/functions_tk.sh"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
############################ current
|
############################ current
|
||||||
|
@ -16,7 +20,7 @@ alias gow="cd $WORKFLOW_PATH" # go to folder of nextcloud where i store my scrip
|
||||||
|
|
||||||
###### lieux locaux
|
###### lieux locaux
|
||||||
alias goj="ssh -p 3910 tykayn@bbb.liness.org"
|
alias goj="ssh -p 3910 tykayn@bbb.liness.org"
|
||||||
alias gopi="ssh pi@192.168.1.156"
|
alias gopi="ssh pi@192.168.1.19"
|
||||||
alias gofat="ssh tykayn@192.168.1.7"
|
alias gofat="ssh tykayn@192.168.1.7"
|
||||||
alias gowork="work"
|
alias gowork="work"
|
||||||
alias gowww="cd $www_folder"
|
alias gowww="cd $www_folder"
|
||||||
|
@ -24,15 +28,15 @@ alias gox="ssh tykayn@proxmox.coussinet.org"
|
||||||
alias gok="ssh debian@ns3247177.ip-164-132-173.eu" # hébergement kimsufi
|
alias gok="ssh debian@ns3247177.ip-164-132-173.eu" # hébergement kimsufi
|
||||||
|
|
||||||
|
|
||||||
alias gonas="ssh $main_user@$IP_DU_NAS -p20522"
|
alias gonas="ssh $main_user@$IP_DU_NAS"
|
||||||
alias gos="cd $stockage_syncable_folder"
|
alias gos="cd $stockage_syncable_folder"
|
||||||
|
|
||||||
alias goa="ssh root@biliz.cluster.chapril.org"
|
alias goa="ssh root@biliz.cluster.chapril.org"
|
||||||
alias goad="cd /home/poule/encrypted/stockage-syncable/photos/a_dispatcher"
|
alias goad="cd /home/poule/encrypted/stockage-syncable/photos/a_dispatcher"
|
||||||
alias goo="cd ~/Nextcloud/textes/orgmode"
|
alias goo="cd $HOME/Nextcloud/textes/orgmode"
|
||||||
alias goi="cd ~/Nextcloud/inbox"
|
alias goi="cd $HOME/Nextcloud/inbox"
|
||||||
alias gov="cd '~/vidéos à voir'"
|
alias gov="cd '$HOME/vidéos à voir'"
|
||||||
alias gown="cd ~/Nextcloud/ressources/workflow_nextcloud"
|
alias gown="cd $HOME/Nextcloud/ressources/workflow_nextcloud"
|
||||||
alias gos="cd /home/poule/encrypted/stockage-syncable"
|
alias gos="cd /home/poule/encrypted/stockage-syncable"
|
||||||
alias gomob="ssh -6 tykayn@mobilizon.vm.openstreetmap.fr -i .ssh/id_rsa_spaceship" # go to mobilizon osm26
|
alias gomob="ssh -6 tykayn@mobilizon.vm.openstreetmap.fr -i .ssh/id_rsa_spaceship" # go to mobilizon osm26
|
||||||
################ personal info management - file management - PIM #########
|
################ personal info management - file management - PIM #########
|
||||||
|
@ -49,8 +53,8 @@ alias exgps="exiftool '-filename<GPSDateTime' -d \"%Y-%m-%dT%H.%I.%S%%c -- has_g
|
||||||
# lister les disques en blocs sans les snaps
|
# lister les disques en blocs sans les snaps
|
||||||
alias lsb="lsblk |grep -v loop"
|
alias lsb="lsblk |grep -v loop"
|
||||||
|
|
||||||
alias range="ts-node /home/poule/encrypted/stockage-syncable/www/development/html/rangement/index.ts --dry-run=true "
|
alias range="$HOME/.npm-global/bin/ts-node /home/poule/encrypted/stockage-syncable/www/development/html/rangement/index.ts --dry-run=true "
|
||||||
alias rangereal="ts-node /home/poule/encrypted/stockage-syncable/www/development/html/rangement/index.ts"
|
alias rangereal="$HOME/.npm-global/bin/ts-node /home/poule/encrypted/stockage-syncable/www/development/html/rangement/index.ts"
|
||||||
|
|
||||||
################ symfony3 ######################
|
################ symfony3 ######################
|
||||||
alias sf="php bin/console"
|
alias sf="php bin/console"
|
||||||
|
@ -81,7 +85,7 @@ alias tfa="tail -f /var/log/nginx/*.log" # suivi des erreurs de serveur
|
||||||
alias aupg="sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get update -y && sudo apt-get upgrade -y"
|
alias aupg="sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get update -y && sudo apt-get upgrade -y"
|
||||||
|
|
||||||
################ système with X server ################
|
################ système with X server ################
|
||||||
alias phps="bash /home/poule/encrypted/stockage-syncable/ressources/logiciels/PhpStorm-2020.1.4/PhpStorm-201.8743.18/bin/phpstorm.sh"
|
alias phps="bash /home/tykayn/Nextcloud/ressources/ide/PhpStorm-251.26927.60/bin/phpstorm.sh"
|
||||||
|
|
||||||
################ git helpers ################
|
################ git helpers ################
|
||||||
alias gci="git commit"
|
alias gci="git commit"
|
||||||
|
@ -102,7 +106,8 @@ alias hgrep="history |grep"
|
||||||
alias whatport="sudo netstat -pna | grep "
|
alias whatport="sudo netstat -pna | grep "
|
||||||
alias runport="firefox https://localhost:$1"
|
alias runport="firefox https://localhost:$1"
|
||||||
alias dff='df -h --exclude-type=squashfs --exclude-type=devtmpfs --exclude-type=tmpfs' # voir l'espace libre sans les paritions snap
|
alias dff='df -h --exclude-type=squashfs --exclude-type=devtmpfs --exclude-type=tmpfs' # voir l'espace libre sans les paritions snap
|
||||||
|
alias pup='/home/tykayn/.local/pipx/venvs/panoramax-cli/bin/panoramax_cli upload --api-url https://panoramax.openstreetmap.fr .' #panoramax upload avec mon compte perso
|
||||||
|
alias pum='/home/tykayn/.local/pipx/venvs/panoramax-cli/bin/panoramax_cli upload --api-url https://panoramax.openstreetmap.fr . --token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnZW92aXNpbyIsInN1YiI6IjQ1NmJmMWQ1LTgxNzEtNDdlMy05MmQ1LWNkNTM1MjBiOWZkMyJ9.JqedjxqgwVY6bB9vKe4v5HiSvZAndiXICre_iI06Auc" --disable-duplicates-check --parallel-uploads 15' #panoramax upload motocultrice
|
||||||
|
|
||||||
export RUBY_ENV=devlopment
|
export RUBY_ENV=devlopment
|
||||||
|
|
||||||
|
@ -110,29 +115,33 @@ export GIT_AUTHOR_NAME="Tykayn"
|
||||||
export GIT_AUTHOR_EMAIL="contact@cipherbliss.com"
|
export GIT_AUTHOR_EMAIL="contact@cipherbliss.com"
|
||||||
|
|
||||||
export NVM_DIR="$HOME/.nvm"
|
export NVM_DIR="$HOME/.nvm"
|
||||||
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||||
|
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||||
|
|
||||||
# développement
|
# développement
|
||||||
alias python=python3
|
alias python=python3
|
||||||
alias py=python3
|
alias py=python3
|
||||||
|
|
||||||
# rangement
|
# rangement
|
||||||
|
alias lwc="ls -ls |wc -l" # compter les fichiers et dossiers
|
||||||
alias findup="snap run czkawka"
|
alias findup="snap run czkawka"
|
||||||
alias ft="filetags --tagtrees --tagtrees-handle-no-tag \"has_no_tag\" --tagtrees-depth 2 --recursive"
|
alias ft="filetags --tagtrees --tagtrees-handle-no-tag \"has_no_tag\" --tagtrees-depth 2 --recursive"
|
||||||
|
|
||||||
alias netre="sudo service network-manager restart"
|
alias netre="sudo service network-manager restart"
|
||||||
|
|
||||||
# syncronisations
|
# syncronisations
|
||||||
alias getrise="rsync root@proxmox.coussinet.org:/poule/encrypted /home/poule/borg_archives/production-servers-backup/rise/ -avzPW --inplace --delete-before --exclude borgbackup_tkland"
|
alias getrise="rsync root@proxmox.coussinet.org:/poule/encrypted /home/poule/borg_archives/production-servers-backup/rise/ -avzPW --inplace --delete-before --exclude borgbackup_tkland"
|
||||||
|
|
||||||
alias ascan="sudo arp-scan --local"
|
alias ascan="sudo arp-scan --local"
|
||||||
|
|
||||||
# youtube dl
|
# youtube dl
|
||||||
alias ydl='yt-dlp -o "%(title)s.f%(format_id)s.%(ext)s"'
|
alias ydl='yt-dlp -o "%(title)s.f%(format_id)s.%(ext)s"'
|
||||||
alias ydla='yt-dlp -o "%(title)s.f%(format_id)s.%(ext)s"'
|
alias ydla='yt-dlp -o "%(title)s.f%(format_id)s.%(ext)s"'
|
||||||
alias ydlup='python3 -m pip install -U yt-dlp'
|
alias ydlup='python3 -m pip install -U yt-dlp --break'
|
||||||
alias upydl='ydlup'
|
alias upydl='ydlup'
|
||||||
|
|
||||||
# stopper les messageries pour être au calme
|
# stopper les messageries pour être au calme
|
||||||
alias oklm="killall gajim telegram-desktop signal-desktop dino-im java vlc"
|
alias oklm="killall gajim telegram-desktop signal-desktop dino-im java vlc webstorm firefox-esr"
|
||||||
|
|
||||||
# enable color support of ls and also add handy aliases
|
# enable color support of ls and also add handy aliases
|
||||||
if [ -x /usr/bin/dircolors ]; then
|
if [ -x /usr/bin/dircolors ]; then
|
||||||
|
@ -156,18 +165,21 @@ export RAILS_ENV=development
|
||||||
|
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
# logiciels
|
# logiciels
|
||||||
alias ws="bash $HOME/Nextcloud/ressources/ide/WebStorm-2023.2.8/bin/webstorm.sh &"
|
alias ws="bash $HOME/Nextcloud/ressources/ide/WebStorm-232.10335.13/bin/webstorm.sh"
|
||||||
alias j="java -jar $HOME/Nextcloud/ressources/logiciels/josm-tested.jar"
|
alias j="java -jar $HOME/Nextcloud/ressources/logiciels/josm-tested.jar"
|
||||||
alias jup="wget https://josm.openstreetmap.de/josm-tested.jar -O $HOME/Nextcloud/ressources/logiciels/josm-tested.jar"
|
alias jup="wget https://josm.openstreetmap.de/josm-tested.jar -O $HOME/Nextcloud/ressources/logiciels/josm-tested.jar"
|
||||||
alias dok="docker-compose"
|
alias dok="docker-compose"
|
||||||
alias dc="docker-compose"
|
alias dc="docker-compose"
|
||||||
|
|
||||||
|
alias plz="sudo !!"
|
||||||
|
alias please="plz"
|
||||||
|
alias e="snap run emacs"
|
||||||
|
|
||||||
export HISTTIMEFORMAT="%d/%m/%y %T "
|
export HISTTIMEFORMAT="%d/%m/%y %T "
|
||||||
export EDITOR=nano
|
export EDITOR=nano
|
||||||
export HUGO_BASE_DIR="~/Nextcloud/textes/hugo"
|
export HUGO_BASE_DIR="~/Nextcloud/textes/hugo"
|
||||||
export PATH=~/.pyenv/bin/:~/.cargo/bin:/snap/bin:$WORKFLOW_PATH/bin:$PATH
|
|
||||||
export PATH="$HOME/.rbenv/bin:$PATH"
|
#eval "$(rbenv init -)"
|
||||||
eval "$(rbenv init -)"
|
|
||||||
|
|
||||||
source $WORKFLOW_PATH/install/functions_sync.sh
|
source $WORKFLOW_PATH/install/functions_sync.sh
|
||||||
source $WORKFLOW_PATH/install/functions_tk.sh
|
source $WORKFLOW_PATH/install/functions_tk.sh
|
||||||
|
@ -182,7 +194,7 @@ if command -v nvm &> /dev/null
|
||||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$(pwd)" = "/var/www/html/" ] || [ "$(pwd)" = "/var/www/html/*" ]; then
|
if [ "$(pwd)" = "/var/www/html/" ] || [ "$(pwd)" = "/var/www/html/*" ]; then
|
||||||
echo "chargement de node version stable"
|
echo "chargement de node version stable"
|
||||||
nvm use stable
|
nvm use stable
|
||||||
|
@ -206,16 +218,36 @@ function dckill() {
|
||||||
}
|
}
|
||||||
# créer un post de blog: new cipher bliss
|
# créer un post de blog: new cipher bliss
|
||||||
ncb(){
|
ncb(){
|
||||||
python /home/poule/encrypted/stockage-syncable/www/development/html/orgmode-to-gemini-blog/new_article.py cipherbliss_blog fr "$@"
|
title_as_args="$@"
|
||||||
|
echo "$title_as_args"
|
||||||
|
|
||||||
|
python /home/poule/encrypted/stockage-syncable/www/development/html/orgmode-to-gemini-blog/new_article.py --blog_dir="cipherbliss_blog" --lang="fr" --title="$title_as_args"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# créer un post de tykayn blog
|
||||||
|
ntk(){
|
||||||
|
title_as_args="$@"
|
||||||
|
echo "$title_as_args"
|
||||||
|
|
||||||
|
python /home/poule/encrypted/stockage-syncable/www/development/html/orgmode-to-gemini-blog/new_article.py --blog_dir="tykayn_blog" --lang="fr" --title="$title_as_args"
|
||||||
|
}
|
||||||
|
|
||||||
|
# commit avec git
|
||||||
function gc() {
|
function gc() {
|
||||||
git add .
|
git add .
|
||||||
git commit -m "$1"
|
git commit -m "$1"
|
||||||
git push
|
git push
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export PATH="~/.pyenv/bin/:~/.cargo/bin:/snap/bin:$WORKFLOW_PATH/bin:$PATH"
|
||||||
|
#export PATH="$HOME/.rbenv/bin:$PATH"
|
||||||
export PATH="~/.npm-global/bin:$PATH"
|
export PATH="~/.npm-global/bin:$PATH"
|
||||||
export PATH="$HOME/.symfony5/bin:$PATH"
|
export PATH="$PATH:$HOME/.npm-global/bin"
|
||||||
|
export PATH=$PATH:/usr/local/go/bin
|
||||||
|
|
||||||
|
eval "$(rbenv init -)"
|
||||||
|
eval "$(zoxide init zsh)" # zoxyde, navigation de dossier avec fuzzy finder
|
||||||
|
|
||||||
|
|
||||||
|
export alias please='sudo !!'
|
||||||
|
export alias plz='please'
|
||||||
|
|
|
@ -7,15 +7,19 @@ Le lancement du script d'init réalise la mise en place de configuration pour ch
|
||||||
Pour récupérer seulement les alias de commande sans prendre toutes les sections, faire ceci:
|
Pour récupérer seulement les alias de commande sans prendre toutes les sections, faire ceci:
|
||||||
```shell
|
```shell
|
||||||
cd
|
cd
|
||||||
wget https://forge.chapril.org/tykayn/workflow/raw/branch/main/assets/.bashrc
|
wget https://source.cipherbliss.com/tykayn/workflow/raw/branch/main/assets/.bashrc
|
||||||
wget https://forge.chapril.org/tykayn/workflow/raw/branch/main/assets/.bash_custom_aliases -O .bash_aliases
|
wget https://source.cipherbliss.com/tykayn/workflow/raw/branch/main/assets/.bash_custom_aliases -O .bash_aliases
|
||||||
source .bash_aliases
|
source .bash_aliases
|
||||||
|
|
||||||
```
|
```
|
||||||
## Installation de programmes
|
## Installation de programmes
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
sudo apt install ansible python3-pip arp-scan borgbackup curl docker docker-compose etckeeper git gnupg jq meld nano ncdu nginx restic npm pandoc php python3 python3-pip tig zsh testdisk texlive rbenv htop btop python3-setuptools autopostgresqlbackup automysqlbackup certbot smartmontools fail2ban snapd unattended-upgrades php php-fpm php-xml php-mysql rsync php-dom php-curl vrms syncthing sshfs geeqie calibre
|
sudo apt update
|
||||||
|
sudo apt upgrade
|
||||||
|
sudo apt install ansible python3-pip arp-scan borgbackup curl docker docker-compose etckeeper git gnupg jq meld nano ncdu nginx restic npm pandoc php8.4 python3 python3-pip tig zsh testdisk texlive rbenv htop python3-setuptools automysqlbackup certbot smartmontools fail2ban snapd unattended-upgrades php8.4-fpm php-xml php-mysql rsync php8.4-xml php-curl vrms syncthing sshfs geeqie calibre adduser snapd borgbackup exa adduser
|
||||||
|
snap install emacs --classic
|
||||||
|
snap install btop
|
||||||
pip install yt-dlp --user
|
pip install yt-dlp --user
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
18
histogramme_from_csv.py
Normal file
18
histogramme_from_csv.py
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
import pandas as pd
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
# Charger le CSV
|
||||||
|
csv_path = 'limitations_vitesse_essonne.csv'
|
||||||
|
df = pd.read_csv(csv_path)
|
||||||
|
|
||||||
|
# Générer l'histogramme
|
||||||
|
plt.figure(figsize=(10,6))
|
||||||
|
plt.bar(df['limitation_vitesse'].astype(str), df['longueur_km'], color='skyblue', edgecolor='black')
|
||||||
|
plt.xlabel('Limitation de vitesse (km/h)')
|
||||||
|
plt.ylabel('Longueur totale (km)')
|
||||||
|
plt.title("Histogramme des limitations de vitesse sur les routes principales de l'Essonne")
|
||||||
|
plt.tight_layout()
|
||||||
|
|
||||||
|
# Sauvegarder en SVG
|
||||||
|
plt.savefig('histogramme_limitations_vitesse_essonne.svg', format='svg')
|
||||||
|
print("Histogramme sauvegardé sous histogramme_limitations_vitesse_essonne.svg")
|
4
init.sh
4
init.sh
|
@ -4,9 +4,11 @@ echo "installation du workflow"
|
||||||
|
|
||||||
mkdir -p ~/Nextcloud/ressources/workflow_nextcloud/
|
mkdir -p ~/Nextcloud/ressources/workflow_nextcloud/
|
||||||
cd ~/Nextcloud/ressources/workflow_nextcloud/
|
cd ~/Nextcloud/ressources/workflow_nextcloud/
|
||||||
git clone https://forge.chapril.org/tykayn/workflow public_workflow
|
git clone https://source.cipherbliss.com/tykayn/workflow public_workflow
|
||||||
cd public_workflow
|
cd public_workflow
|
||||||
|
|
||||||
|
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B188E2B695BD4743
|
||||||
|
|
||||||
bash initialization/init_workflow.sh
|
bash initialization/init_workflow.sh
|
||||||
|
|
||||||
echo "\n\n ça c'est fait"
|
echo "\n\n ça c'est fait"
|
||||||
|
|
|
@ -56,7 +56,7 @@ if [ -z ${load_only_once+x} ]; then
|
||||||
export LOG_FILE_BACKUP_DATES="$ARCHIVE_SYNCABLE/www/backup/summary_log_backup.log"
|
export LOG_FILE_BACKUP_DATES="$ARCHIVE_SYNCABLE/www/backup/summary_log_backup.log"
|
||||||
|
|
||||||
export main_archive_source_sftop_spaceship="/mnt/spaceship_poule"
|
export main_archive_source_sftop_spaceship="/mnt/spaceship_poule"
|
||||||
export IP_DU_NAS="/mnt/spaceship_poule"
|
export IP_DU_NAS="192.168.1.15"
|
||||||
|
|
||||||
export CURRENT_YEAR=$(date +%Y)
|
export CURRENT_YEAR=$(date +%Y)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue