All Projects → happyleavesaoc → home-assistant-graph

happyleavesaoc / home-assistant-graph

Licence: MIT license
No description or website provided.

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to home-assistant-graph

Uecs
Ubpa Entity-Component-System (U ECS) in Unity3D-style
Stars: ✭ 174 (+480%)
Mutual labels:  graphviz
Visualize ruby
Transform code into a flowchart and experimentally trace the execution path through it
Stars: ✭ 237 (+690%)
Mutual labels:  graphviz
Student-homeassistant-config
🎓 Student Home configuration. Stay informed by 🌟 this repository for updates!
Stars: ✭ 160 (+433.33%)
Mutual labels:  home-assistant-config
Diagrams
🎨 Diagram as Code for prototyping cloud system architectures
Stars: ✭ 15,756 (+52420%)
Mutual labels:  graphviz
Deepgraph
Analyze Data with Pandas-based Networks. Documentation:
Stars: ✭ 232 (+673.33%)
Mutual labels:  graphviz
Azure Plantuml
PlantUML sprites, macros, and other includes for Azure services
Stars: ✭ 247 (+723.33%)
Mutual labels:  graphviz
Psgraph
A set of utilities for working with Graphviz in Powershell
Stars: ✭ 160 (+433.33%)
Mutual labels:  graphviz
xmpaint
处理有向图的有力工具
Stars: ✭ 65 (+116.67%)
Mutual labels:  graphviz
Ansible Playbook Grapher
A command line tool to create a graph representing your Ansible playbook tasks and roles
Stars: ✭ 234 (+680%)
Mutual labels:  graphviz
dockerfilegraph
Visualize your multi-stage Dockerfiles
Stars: ✭ 55 (+83.33%)
Mutual labels:  graphviz
Gofsm
a featured FSM that can export state images
Stars: ✭ 222 (+640%)
Mutual labels:  graphviz
Graphviz
A Swift package for working with GraphViz
Stars: ✭ 230 (+666.67%)
Mutual labels:  graphviz
ecto erd
A mix task for generating Entity Relationship Diagram from Ecto schemas available in your project.
Stars: ✭ 173 (+476.67%)
Mutual labels:  graphviz
Go Graphviz
Go bindings for Graphviz
Stars: ✭ 183 (+510%)
Mutual labels:  graphviz
yamburger
YAML syntax got you down? That's a YAMBURGER!
Stars: ✭ 32 (+6.67%)
Mutual labels:  home-assistant-config
Dot To Ascii
Graphviz to ASCII converter using Graph::Easy
Stars: ✭ 168 (+460%)
Mutual labels:  graphviz
C4 Plantuml
C4-PlantUML combines the benefits of PlantUML and the C4 model for providing a simple way of describing and communicate software architectures
Stars: ✭ 3,522 (+11640%)
Mutual labels:  graphviz
homeassistant
aFFekopps Home Assistant Configuration
Stars: ✭ 47 (+56.67%)
Mutual labels:  home-assistant-config
home-assistant-config
🏠 My Home Assistant configuration
Stars: ✭ 17 (-43.33%)
Mutual labels:  home-assistant-config
my home assistant configuration
My Home Assistant Configuration
Stars: ✭ 24 (-20%)
Mutual labels:  home-assistant-config

home-assistant-graph PyPI version

Graph

Demo

https://happyleavesaoc.github.io/hagraph.html

Install

Install graphviz:

yum install graphviz graphviz-devel      # RHEL/CentOS
apt-get install graphviz graphviz-dev    # Ubuntu/Rasbian

Install hagraph: pip install hagraph

Errors about pygraphviz? Try:

pip install git+https://github.com/pygraphviz/pygraphviz.git --install-option="--include-path=/usr/include/graphviz" --install-option="--library-path=/usr/lib/graphviz/"

Run

python3 -m hagraph -i <path/to/configuration.yaml> -o <path/to/output.[dot/png/jpg/svg/etc]>

Suggested Integration

Home Assistant Configuration

panel_iframe:
  graph:
    title: Graph
    icon: mdi:vector-polyline
    url: "https://your.hass/local/graph.html"

shell_command:
  generate_graph: "python3 -m hagraph -i <path/to/configuration.yaml> -o <path/to/www/>graph.svg"

automation:
  - alias: Generate graph
    trigger:
      platform: event
      event_type: homeassistant_start
    action:
      - service: shell_command.generate_graph

graph.html

In your <Home Assistant configuration directory>/www:

<html>
<script src="/local/svg-pan-zoom.min.js"></script>
<head>
        <meta http-equiv="cache-control" content="max-age=0" />
        <meta http-equiv="cache-control" content="no-cache" />
        <meta http-equiv="expires" content="0" />
        <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
        <meta http-equiv="pragma" content="no-cache" />
        <style>
                body { margin: 0; padding: 0; }
        </style>
</head>
<body>
<object id="graph" data="/local/graph.svg" type="image/svg+xml" style="width: 100%; height: 100%; background-color: #E5E5E5">
</object>
    <script>
      window.onload = function() {
        svgPanZoom('#graph', {
          controlIconsEnabled: false,
          zoomScaleSensitivity: 0.7,
          minZoom: 1
        });
      };
    </script>
</body>
</html>

Be sure to get svg-pan-zoom.min.js as well.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].