開源 python 應用 開發(七)數據可視化

?最近有個項目需要做視覺自動化處理的工具,最后選用的軟件為python,剛好這個機會進行系統學習。短時間學習,需要快速開發,所以記錄要點步驟,防止忘記。

?鏈接:

開源 python 應用 開發(一)python、pip、pyAutogui、python opencv安裝-CSDN博客

開源 python 應用 開發(二)基于pyautogui、open cv 視覺識別的工具自動化-CSDN博客

開源 python 應用 開發(三)python語法介紹-CSDN博客

開源 python 應用 開發(四)python文件和系統綜合應用-CSDN博客

開源 python 應用 開發(五)python opencv之目標檢測-CSDN博客

開源 python 應用 開發(六)網絡爬蟲-CSDN博客

開源 python 應用 開發(七)數據可視化-CSDN博客

?推薦鏈接:

開源 Arkts 鴻蒙應用 開發(一)工程文件分析-CSDN博客

開源 Arkts 鴻蒙應用 開發(二)封裝庫.har制作和應用-CSDN博客

開源 Arkts 鴻蒙應用 開發(三)Arkts的介紹-CSDN博客

開源 Arkts 鴻蒙應用 開發(四)布局和常用控件-CSDN博客

開源 Arkts 鴻蒙應用 開發(五)控件組成和復雜控件-CSDN博客

?推薦鏈接:

開源 java android app 開發(一)開發環境的搭建-CSDN博客

開源 java android app 開發(二)工程文件結構-CSDN博客

開源 java android app 開發(三)GUI界面布局和常用組件-CSDN博客

開源 java android app 開發(四)GUI界面重要組件-CSDN博客

開源 java android app 開發(五)文件和數據庫存儲-CSDN博客

開源 java android app 開發(六)多媒體使用-CSDN博客

開源 java android app 開發(七)通訊之Tcp和Http-CSDN博客

開源 java android app 開發(八)通訊之Mqtt和Ble-CSDN博客

開源 java android app 開發(九)后臺之線程和服務-CSDN博客

開源 java android app 開發(十)廣播機制-CSDN博客

開源 java android app 開發(十一)調試、發布-CSDN博客

開源 java android app 開發(十二)封庫.aar-CSDN博客

推薦鏈接:

開源C# .net mvc 開發(一)WEB搭建_c#部署web程序-CSDN博客

開源 C# .net mvc 開發(二)網站快速搭建_c#網站開發-CSDN博客

開源 C# .net mvc 開發(三)WEB內外網訪問(VS發布、IIS配置網站、花生殼外網穿刺訪問)_c# mvc 域名下不可訪問內網,內網下可以訪問域名-CSDN博客

開源 C# .net mvc 開發(四)工程結構、頁面提交以及顯示_c#工程結構-CSDN博客

開源 C# .net mvc 開發(五)常用代碼快速開發_c# mvc開發-CSDN博客

本章節內容如下:

一、基本圖形

1.1? 安裝matplotlib庫

使用vscode的終端或cmd進行安裝

pip install matplotlib -i https://mirrors.aliyun.com/pypi/simple/

1.2? 安裝成功效果

?

1.3? 正弦波顯示代碼

import matplotlib.pyplot as plt
import numpy as np#pip install matplotlib -i https://mirrors.aliyun.com/pypi/simple/
# 創建數據
x = np.linspace(0, 10, 100)
y = np.sin(x)# 創建圖形
plt.figure(figsize=(8, 6))# 繪制線圖
plt.plot(x, y, label='sin(x)', color='blue', linewidth=2)# 添加標題和標簽
plt.title('Sine Wave', fontsize=16)
plt.xlabel('X-axis', fontsize=14)
plt.ylabel('Y-axis', fontsize=14)# 添加圖例
plt.legend(fontsize=12)# 顯示網格
plt.grid(True, linestyle='--', alpha=0.7)# 顯示圖形
plt.show()

1.4? 正弦波顯示效果

?

1.5? 矩形代碼

import matplotlib.pyplot as plt
import matplotlib.patches as patches# 創建一個圖形和坐標軸
fig, ax = plt.subplots()# 創建一個長方形(Rectangle)
# 參數:(左下角x坐標, 左下角y坐標), 寬度, 高度
rectangle = patches.Rectangle((0.2, 0.3), 0.5, 0.4, linewidth=2, edgecolor='r', facecolor='blue', alpha=0.5)# 添加到坐標軸
ax.add_patch(rectangle)# 設置坐標軸范圍
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)# 顯示圖形
plt.title("Rectangle using matplotlib")
plt.show()

1.6? 矩形顯示效果

?

二、綜合銷售圖形

2.1? 安裝pandas 庫

pip install pandas -i https://mirrors.aliyun.com/pypi/simple/

?

2.2? 代碼

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np# 準備數據
data = {"月份": ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],"銷售額": [336, 389, 704, 469, 414, 464, 409, 483, 481, 525, 567, 465],"陽光硅片": [100, 110, 130, 114, 160, 176, 154, 131, 121, 231, 114, 231],"華測硅片": [113, 114, 231, 232, 123, 165, 132, 176, 198, 113, 321, 123],"TD測試": [123, 165, 343, 123, 131, 123, 123, 176, 162, 181, 132, 111]
}
df = pd.DataFrame(data)# 設置全局樣式
plt.style.use('ggplot')
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 創建畫布和子圖(增大畫布尺寸并調整布局參數)
fig = plt.figure(figsize=(20, 16))  # 寬度增加到20,高度增加到16
fig.suptitle('2023年銷售數據分析報告', fontsize=18, y=1.02)# 調整子圖之間的間距參數
plt.subplots_adjust(wspace=0.3, hspace=0.4)  # 增加水平和垂直間距# 子圖1:趨勢分析(折線圖)
ax1 = plt.subplot(2, 2, 1)
ax1.plot(df["月份"], df["銷售額"], marker="o", label="總銷售額", linewidth=2, color='#1f77b4')
ax1.plot(df["月份"], df["陽光硅片"], marker="s", label="陽光硅片", color='#ff7f0e')
ax1.plot(df["月份"], df["華測硅片"], marker="^", label="華測硅片", color='#2ca02c')
ax1.plot(df["月份"], df["TD測試"], marker="d", label="TD測試", color='#d62728')
ax1.set_title("1. 銷售額及品牌趨勢分析", pad=13, fontsize=14)  # 增加標題間距和字體大小
#ax1.set_xlabel("月份", fontsize=12)
ax1.set_ylabel("銷售額(萬)", fontsize=12)
ax1.legend(fontsize=10)
ax1.grid(linestyle="--")# 子圖2:品牌占比(堆疊面積圖)
ax2 = plt.subplot(2, 2, 2)
ax2.stackplot(df["月份"], df["陽光硅片"], df["華測硅片"], df["TD測試"],labels=["陽光硅片", "華測硅片", "TD測試"],colors=["#FFA07A", "#98FB98", "#87CEFA"]
)
ax2.set_title("2. 品牌銷售額占比(堆疊視圖)", pad=13, fontsize=14)
#ax2.set_xlabel("月份", fontsize=12)
ax2.set_ylabel("銷售額(萬)", fontsize=12)
ax2.legend(loc="upper left", fontsize=10)# 子圖3:品牌對比(柱狀圖)
ax3 = plt.subplot(2, 2, 3)
width = 0.25
x = np.arange(len(df["月份"]))
ax3.bar(x - width, df["陽光硅片"], width, label="陽光硅片", color="#FFA07A")
ax3.bar(x, df["華測硅片"], width, label="華測硅片", color="#98FB98")
ax3.bar(x + width, df["TD測試"], width, label="TD測試", color="#87CEFA")
ax3.set_title("3. 各品牌月度銷售額對比", pad=13, fontsize=14)
ax3.set_ylabel("銷售額(萬)", fontsize=12)
ax3.set_xticks(x)
ax3.set_xticklabels(df["月份"], fontsize=10)
ax3.legend(fontsize=10)# 子圖4:相關性分析(熱力圖)
ax4 = plt.subplot(2, 2, 4)
corr = df[["銷售額", "陽光硅片", "華測硅片", "TD測試"]].corr()
im = ax4.imshow(corr, cmap="coolwarm", vmin=-1, vmax=1)
ax4.set_title("4. 銷售額與品牌的相關性", pad=13, fontsize=14)
ax4.set_xticks(np.arange(len(corr.columns)))
ax4.set_yticks(np.arange(len(corr.columns)))
ax4.set_xticklabels(corr.columns, fontsize=10)
ax4.set_yticklabels(corr.columns, fontsize=10)
cbar = plt.colorbar(im, ax=ax4)
cbar.ax.tick_params(labelsize=10)  # 設置colorbar刻度字體大小# 添加相關系數文本(調整字體大小)
for i in range(len(corr.columns)):for j in range(len(corr.columns)):ax4.text(j, i, f"{corr.iloc[i, j]:.2f}", ha="center", va="center", color="black", fontsize=10)plt.tight_layout(pad=4.0)  # 增加整體邊距
plt.show()

2.3? 顯示效果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/89106.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/89106.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/89106.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于深度學習的情感分析模型:從文本數據到模型部署

前言 情感分析(Sentiment Analysis)是自然語言處理(NLP)領域中的一個重要應用,它通過分析文本數據來判斷文本的情感傾向,例如正面、負面或中性。隨著社交媒體的興起,情感分析在市場調研、品牌管…

使用python 實現一個http server

下面是一個使用 Python 內置庫 http.server 的簡單 HTTP 服務器實現。不需要安裝任何第三方庫,非常適合做演示或開發測試用。 from http.server import HTTPServer, BaseHTTPRequestHandlerclass SimpleHTTPRequestHandler(BaseHTTPRequestHandler):def do_GET(self…

Redis技術筆記-主從復制、哨兵與持久化實戰指南

目錄 前言 一、Redis主從復制 (一)Redis主從復制介紹 (二)基本環境準備 (三)工作原理 (四)結構模式 (五)一主一從(無密碼) 配置…

sundog公司的SilverLining SDK庫實現3d動態云層和下雨、下雨、雨夾雪效果

OSG系列文章目錄 文章目錄OSG系列文章目錄前言一、3d動態云與下雨、下雪效果不能同時出現二、3d動態云與下雨、下雪效果不能同時出現的原因三、解決辦法:前言 先看下效果:下雨 效果:下雪 效果:雨夾雪 🌤? Sundo…

Python:簡易的 TCP 服務端與客戶端示例

下面是一個完整的 TCP 服務端與客戶端示例,適用于 Python 3,使用 socket 模塊,并正確處理了中文傳輸與異常情況,支持基本的多輪通信。TCP 服務端(server_tcp.py)import socket HOST 127.0.0.1 # 監聽本地…

文心一言 4.5 開源深度剖析:中文霸主登場,開源引擎重塑大模型生態

> 百度用一場徹底的開源風暴,宣告中文大模型進入性能與普惠并重的新紀元——這里沒有技術黑箱,只有開發者手中躍動的創新火花。 2025年,當全球大模型競賽進入深水區,百度文心一言4.5的開源如同一顆重磅炸彈,徹底打破了“閉源即領先”的固有認知。這一次,中國團隊不…

解決“Windows 無法啟動服務”問題指南

錯誤1067:進程意外終止一、重啟計算機有時系統出現臨時性的服務故障,重啟計算機就可以有效解決問題。需要注意的是,在重啟之前,需要保存好所有未保存的工作,以免數據丟失。重啟完成后,再次嘗試啟動相關服務…

銀河麒麟(Kylin) - V10 GFB高級服務器操作系統ARM64部署昇騰910b訓練機以及Docker安裝

銀河麒麟(Kylin) - V10 GFB高級服務器操作系統ARM64部署昇騰910b訓練機以及Docker安裝 原因 項目需要使用Deepseek-r1-distill-qwen-32b來做訓練,在此記錄 測試環境 服務器配置 型號:G5680V2 CPU:CPU 4Kunpeng 920-5250 NPU:NP…

消息中間件(Kafka VS RocketMQ)

目錄 一、概要介紹 二、架構與原理 三、消費模式 1、Kafka—純拉模式 2、RocketMQ—拉模式 3、RocketMQ—推模式 4、模式對比 四、特殊消息 1、順序消息 2、消息過濾 3、延遲消息 4、事務消息 5、廣播消息 五、高吞吐 六、高可用 七、高可靠 一、概要介紹 Apa…

MyBatis級聯查詢深度解析:一對多關聯實戰指南

MyBatis級聯查詢深度解析:一對多關聯實戰指南在實際企業級開發中,單表操作僅占20%的場景,而80%的業務需求涉及多表關聯查詢。本文將以一對多關系為例,深入剖析MyBatis級聯查詢的實現原理與最佳實踐,助你掌握高效的數據…

搜索框的顯示與隱藏(展開與收起)

效果如下直接上代碼v-if"showAll || 0 < 3" 的意思是&#xff1a;如果 showAll 為 true&#xff0c;或者 0 小于 3&#xff0c;這個表單項就會顯示。<el-form :inline"true" class"demo-form-inline" size"default" label-width…

01 啟動流程實例

前言本文基于 Activiti 7.0.0.GA 源碼&#xff0c;研究 Activiti 如何啟動一個流程實例。審批流程圖如下圖&#xff0c;在此流程圖中&#xff0c;存在兩個UserTask節點&#xff0c;第一個節點是主管審批&#xff0c;第二個節點是產品經理審批&#xff0c;兩個節點中間有一個排他…

LeetCode--47.全排列 II

解題思路&#xff1a;1.獲取信息&#xff1a;給定一個可包含重復數字的序列&#xff0c;按任意順序返回所有不重復的全排列提示信息&#xff1a;1 < nums.length < 8-10 < nums[i] < 102.分析題目&#xff1a;相較于46題&#xff0c;它多限制了一個條件&#xff0c…

vue3 服務端渲染時請求接口沒有等到數據,但是客戶端渲染是請求接口又可以得到數據

原因是: 服務端請求 后端接收到 請求 ‘Content-Type’: ‘application/x-www-form-urlencoded; charsetUTF-8’ 直接返回錯誤的code 200000 增加 data: {} 服務端請求 后端接收到 請求 ‘Content-Type’: ‘application/json; charsetUTF-8’ 服務端請求就可以得到數據 expo…

Linux 文件操作命令大全:從入門到精通的實用指南

Linux 文件操作命令大全&#xff1a;從入門到精通的實用指南 在 Linux 系統中&#xff0c;文件操作是日常工作的核心內容之一。無論是開發者、運維工程師還是 Linux 愛好者&#xff0c;掌握常用的文件操作命令都能極大提升工作效率。本文將詳細介紹 Linux 系統中最常用的文件操…

Linux開發利器:探秘開源,構建高效——基礎開發工具指南(上)【包管理器/Vim】

???~~~~~~歡迎光臨知星小度博客空間~~~~~~??? ???零星地變得優秀~也能拼湊出星河~??? ???我們一起努力成為更好的自己~??? ???如果這一篇博客對你有幫助~別忘了點贊分享哦~??? ???如果有什么問題可以評論區留言或者私信我哦~??? ??????個人…

基于遷移學習的培養基配方開發方法

本文為學習筆記&#xff0c;原文專利&#xff1a; 中國專利公布公告 然后輸入 202110622279.7 概覽 一、問題背景 傳統培養基開發痛點&#xff1a; 數據依賴&#xff1a;需大量細胞實驗&#xff08;1000配方&#xff09;訓練專用模型 遷移性差&#xff1a;A細胞模型無法直接…

Web3.0與元宇宙:重構數字文明的技術范式與社會變革

一、技術融合&#xff1a;Web3.0與元宇宙的底層架構互補1.1 區塊鏈與智能合約&#xff1a;構建信任基石去中心化信任機制&#xff1a;Web3.0的區塊鏈技術為元宇宙提供去中心化信任框架&#xff0c;虛擬資產&#xff08;如土地、道具&#xff09;通過NFT&#xff08;非同質化代幣…

Java: OracleHelper

/*** encoding: utf-8* 版權所有 2025 ©涂聚文有限公司 * 許可信息查看&#xff1a;言語成了邀功盡責的功臣&#xff0c;還需要行爲每日來值班嗎* 描述&#xff1a; https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html ojdbc11* Author : geovi…

OSPFv3-一二類LSA

文章目錄OSPFv3 LSA類型Router LSANetwork LSA&#x1f3e1;作者主頁&#xff1a;點擊&#xff01; &#x1f916;Datacom專欄&#xff1a;點擊&#xff01; ??創作時間&#xff1a;2025年07月12日20點01分 OSPFv3 LSA類型 Router LSA 不再包含地址信息&#xff0c;使能 OS…