plantuml / plantuml

Generate diagrams from textual description
https://plantuml.com
Other
9.81k stars 888 forks source link

MindMap Diagram Support! #43

Closed aadrian closed 1 year ago

aadrian commented 7 years ago

Hi,

Please add MindMap Diagram Support too :) .

Something compact like FreePlane https://sourceforge.net/projects/freeplane/ is producing: http://freeplane.sourceforge.net/wiki/index.php/File:FreeplaneWiki.jpg would be very useful.

Thanks in advance.

lindoman commented 4 years ago

OK, so I was trying to create a more interesting example right now, but came across another limitation. I wanted to render the following: image but I was breaking my own "tree in reverse" rule over on the merge to "3" on the right side, leaving 2.3 orphaned.

Correctly, I should do something like this: image

which could be coded like this:

@startmindmap
* 1
** 2.1
** 2.2
>*3
start left
** 2.1L
** 2.2L
** 2.3L
*** 3.1L
*** 3.2L
*** 3.3L
<** 4L
@endmindmap

unless of course there were a way to explicitly state that a node could be "orphaned" in a merge. Hmmm... this all feels like it is getting too complicated again!!!

But I like the idea of trying to merge thoughts together in a mind map...! It's the kind of thing we can all do on paper, and in our heads easily enough... like coming to a conclusion from a number of different, but related thoughts...

ghost commented 4 years ago

Would it be possible to make vertical mind maps?

Actually, I use the MindMap feature to draw trees when debugging (lisp) programs, and it is a HUUUGE help. The only thing that bothers me is that the trees are horizontally aligned. Which is fine if a datum in every node is short. (actually even look better this way), but not as good if the data are long strings.

Anyway, thanks for your awesome work. PlantUML is such a great help.

aadrian commented 4 years ago

Would it be possible to make vertical mind maps?

@lockywolf could you give a visual example?

ghost commented 4 years ago

image @aadrian

aadrian commented 4 years ago

@lockywolf what about http://plantuml.com/wbs-diagram ?

ghost commented 4 years ago

@aadrian can it grow up?

hallvard commented 4 years ago

Could we support more ad-hoc links across branches, e.g use "a long sentence" as id to assign an identifier (id in this case) to a node and then allow links ala other diagrams at the end, e.g --> id

b0g3r commented 4 years ago

It sounds strange, but plantuml 2019.11 and neither beta version doesn't support coloring nodes/edges for mindmaps.

For example

@startmindmap
*[#Orange] Teamlead Roadmap
**[#FFBBAA] ABC
***[#FFBBCC]_ Resource Manager
@endmindmap

Now generates image like this: image

Unfortunately, I don't read and write on Java well, and couldn't find code which responsible about color, only this piece: https://github.com/plantuml/plantuml/blob/82b570d0f0907ce1e99412594f5a6ff583631d20/src/net/sourceforge/plantuml/mindmap/MindMapDiagram.java#L137-L139

Any ideas about how to add color support to mindmaps? 🤔

P.S. Also I found a strange blog post about emacs plantuml plugin and there coloring described as an implemented feature

arnaudroques commented 4 years ago

Thanks for the feedback. It sounds like a regression : we are going to investigate. We'll post a message here when this will be fixed.

arnaudroques commented 4 years ago

The color regression is fixed in last release V1.2019.12

b0g3r commented 4 years ago

How to change edge width in mindmap? Also what about each edge color?

I tried style feature:

style mindmapDiagram && arrow {
    LineThickness 1.0
}

But it doesn't work both on 2019.12 and beta :( image

s-kramer commented 4 years ago

Would you consider giving an option to write the text on the edges between the nodes instead of the nodes? Also, in V1.2019.11, the maximumWidth parameter doesn't work for box-less nodes

nicph commented 4 years ago

Hi

I was trying to style an entire branch of a mindmap, using the "descendant" pseudo selector like described in http://wiki.plantuml.net/site/style-evolution , but that doesn't seem to work with mindmaps (planuml 1.2020.01)

@startmindmap
<style>
mindmapDiagram {
  .myStyle * {
    BackGroundColor lightblue
    LineColor lightblue
  }
}
</style>
* root
** node 1 <<myStyle>>
*** subNode 1
*** subNode 2
**** subSubNode

** node 2
@endmindmap

Here is what i get :

whatiget

And what i expected :

expected

Am I missing something ?

By the way, is there any way to style the edge between two given node ? for example here between root and node 1, idealy with a dynamic selectors ?

NielsKruse commented 4 years ago

Hi, I am trying to, somehow, style the non-boxed nodes in a mindmap (the ones with underscores, i.e. "**_" - I'm not even sure if they have a specific name), but haven't found anything. They remain black. I tried various styles tag entries and skinparams. Is that even possible?

lrosenthol commented 4 years ago

Maybe I am missing this, but I can't seem to add a note to a node in a mindmap. I want to put some comments/notes to the right/left of the nodes like I can in other types of diagrams. Thanks for all the great work so far!!

kishcs commented 4 years ago

This can be an inspiration. Miro Mindmap

sxiii commented 3 years ago

Greetings dear developers and vibrant community!

I am trying to use mindmap option to build a dark-themed mindmap. For this, I need the *_ ("no-box") objects to have FontColor white. However, when I am trying to describe a class with this fontcolor, it does not work.

P.S. I don't care if the whole text in document will be painted in white - it's okay for me. I just want a solution for dark-themed mindmaps. Here's an example code:

Example code --- ``` @startmindmap skinparam defaultFontSize 18 skinparam defaultFontName Ubuntu skinparam dpi 300 skinparam backgroundColor #302934 * Lessons by Den <> ** OS-agnostic package management ***_ Flatpak <> ***_ SNAP Packages <> ***_ AppImages <> @endmindmap ``` ---

That's the resulting image: image

Direct link to the example

So I want the "Flatpak" and other "leaves" to be white font.

Thanks for your help!

arnaudroques commented 3 years ago

@sxiii Thanks for the report. This is indeed a bug which is fixed in last beta http://beta.plantuml.net/plantuml.jar

sxiii commented 3 years ago

Oh thank you @arnaudroques this is really fixed and works! For those who want to use the older version meanwhile, I just found a temporary fix for this issue. It's not pretty but it works - just color a text you need like that:

+++_ <font color="white">SNAP Packages

And it ensures that the text will be white. The problem with this solution is, obviously, that you have to type it in each and every row. I don't know if it can be build as a class and used everywhere. But better just use the beta as @arnaudroques suggested and you'll be all good! Resulting image with beta

stefan-m-lenz commented 3 years ago

Would it be possible to add a heading to a node in the mindmap? For me this is one of the most important features of a mindmap that I have a heading and further content in the node.

user1095108 commented 3 years ago

I want a top-down mind-map, please.

kk6mrp commented 3 years ago

But I like the idea of trying to merge thoughts together in a mind map...! It's the kind of thing we can all do on paper, and in our heads easily enough... like coming to a conclusion from a number of different, but related thoughts...

This would be awesome! I've been making a water flow diagram for work and the Mindmap style works super well for mapping out water flow. The only issue is that I can't merge water sources back together again as they would in a drainage system.

johny-tee commented 1 year ago

Have you tried "top to bottom direction"? Works for me.

@startmindmap

top to bottom direction

* Debian
** Ubuntu
*** Linux Mint
*** Kubuntu
*** Lubuntu
*** KDE Neon
** LMDE
** SolydXK
** SteamOS
** Raspbian with a very long name
*** <s>Raspmbc</s> => OSMC
*** <s>Raspyfi</s> => Volumio
@endmindmap
ghost commented 1 year ago

Seemingly, can be closed?

Although, maybe support for four-directional diagrams could make PlantUML even more perfect...

But that is perfectionism really.