Skip to main content
edited tags; edited tags
Link
added 746 characters in body; edited tags
Source Link
Xuemei
  • 1.7k
  • 7
  • 10

I haveFor the two complex weighted hypergraphs which shares{$G_{1}: w1$ for edge $(d_{1},d_{2})$; $G_{1}: w2$ for edge ($d_{1},d_{3}$) } sharing one vertex $d_{1}$, I use different color for the complex angle and transparency for the complex radial (usually a color wheel can stand for such complex domain, see halirutan's solution for plotting colorwheel).

Here the HypergraphPlot function is from Jaebum Jung's hypergraph plotting):

fig1 = HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Green, Red}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

SoThere in the plot figure isabove example fig1 as{$G_{1}: w_{1}=1$, red color ; $G_{2}: w_{2}=I$, green color }, the hypergraph is plotting as following fig1:

fig1fig1

I want to knowNow the question is how tocan I show the overlap region and summingwith the correct color infor the common regions such assummed weights fig2$w_{3}=w_{1}+w_{2}$ for vertex ($d_{1}$? Assume red + green ~green~ yellow)?, so the fig1 should be fig2 as I want. But I don't know how to show up the overlapped region.

fig2common fig

The stupid way I do is to drawquite stupid -- adding one more additional hypergraph that only contains the common vertex and$d_{1}$ with the summedcorrect color -- this will showto cover the common region but in a manual way such as:.

HypergraphPlot[fig2=HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}, {Subscript[d, 1], Subscript[d, 1]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Red, Green, Yellow}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

WhatBut I think it's not a good idea because if mutiple edges in two vertices? AndI have complicated hypergraphs and the manual way is not so nice duecommon regions are randomly, I cannot always put additional edges to cover and I can see the discontinued curves from differentadding edges cannot follow obviously the original overlapped curves. 

Is there any clever way to do such things if the hypergraphs get more complicatedcolor common regions with graphs? Thank you very much in advance! If something is unclear, thank you for pointing out!

I have two hypergraphs which shares one vertex (HypergraphPlot function from Jaebum Jung's hypergraph plotting):

fig1 = HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Green, Red}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

So the plot figure is fig1 as the following:

fig1

I want to know how to show the overlap region and summing the color in the common regions such as fig2 (red + green ~ yellow)?

fig2

The stupid way I do is to draw one more additional hypergraph that only contains the common vertex and with the summed color -- this will show the region but in a manual way such as:

HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}, {Subscript[d, 1], Subscript[d, 1]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Red, Green, Yellow}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

What if mutiple edges in two vertices? And the manual way is not so nice due to the discontinued curves from different edges. Is there any clever way to do such things if the hypergraphs get more complicated? Thank you very much in advance! If something is unclear, thank you for pointing out!

For the two complex weighted hypergraphs {$G_{1}: w1$ for edge $(d_{1},d_{2})$; $G_{1}: w2$ for edge ($d_{1},d_{3}$) } sharing one vertex $d_{1}$, I use different color for the complex angle and transparency for the complex radial (usually a color wheel can stand for such complex domain, see halirutan's solution for plotting colorwheel).

Here the HypergraphPlot function is from Jaebum Jung's hypergraph plotting:

fig1 = HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Green, Red}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

There in the above example {$G_{1}: w_{1}=1$, red color ; $G_{2}: w_{2}=I$, green color }, the hypergraph is plotting as following fig1:

fig1

Now the question is how can I show the overlap region with the correct color for the summed weights $w_{3}=w_{1}+w_{2}$ for vertex $d_{1}$? Assume red + green~ yellow, so the fig1 should be fig2 as I want. But I don't know how to show up the overlapped region.

common fig

The way I do is quite stupid -- adding one more hypergraph that only contains vertex $d_{1}$ with the correct color to cover the common region.

fig2=HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}, {Subscript[d, 1], Subscript[d, 1]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Red, Green, Yellow}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

But I think it's not a good idea because if I have complicated hypergraphs and the common regions are randomly, I cannot always put additional edges to cover and I can see the adding edges cannot follow obviously the original overlapped curves. 

Is there any clever way to do such color common regions with graphs? Thank you very much in advance! If something is unclear, thank you for pointing out!

Tweeted twitter.com/StackMma/status/1197802026593345538
added 43 characters in body
Source Link
Xuemei
  • 1.7k
  • 7
  • 10

I have two hypergraphs which shares one vertex (HypergraphPlot function from Jaebum Jung's hypergraph plotting):

fig1 = HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Green, Red}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

So the plot figure is fig1 as the following:

fig1

I want to know how to show the overlap region and summing the color in the common regions such as fig2 (red + green ~ yellow)?

fig2

The stupid way I do is to draw one more additional hypergraph that only contains the common vertex and with the summed color -- this will show the region but in a manual way such as:

HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}, {Subscript[d, 1], Subscript[d, 1]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Red, Green, Yellow}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

TheWhat if mutiple edges in two vertices? And the manual way is not so nice due to the discontinued curves from different edges. Is there any clever way to do such things if the hypergraphs get more complicated? Thank you very much in advance! If something is unclear, thank you for pointing out!

I have two hypergraphs which shares one vertex (HypergraphPlot function from Jaebum Jung's hypergraph plotting):

fig1 = HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Green, Red}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

So the plot figure is fig1 as the following:

fig1

I want to know how to show the overlap region and summing the color in the common regions such as fig2 (red + green ~ yellow)?

fig2

The stupid way I do is to draw one more additional hypergraph that only contains the common vertex and with the summed color -- this will show the region but in a manual way such as:

HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}, {Subscript[d, 1], Subscript[d, 1]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Red, Green, Yellow}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

The manual way is not so nice due to the discontinued curves from different edges. Is there any clever way to do such things if the hypergraphs get more complicated? Thank you very much in advance! If something is unclear, thank you for pointing out!

I have two hypergraphs which shares one vertex (HypergraphPlot function from Jaebum Jung's hypergraph plotting):

fig1 = HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Green, Red}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

So the plot figure is fig1 as the following:

fig1

I want to know how to show the overlap region and summing the color in the common regions such as fig2 (red + green ~ yellow)?

fig2

The stupid way I do is to draw one more additional hypergraph that only contains the common vertex and with the summed color -- this will show the region but in a manual way such as:

HypergraphPlot[{{Subscript[d, 1], Subscript[d, 2]}, {Subscript[d, 1], Subscript[d, 3]}, {Subscript[d, 1], Subscript[d, 1]}}, "SubsetBoundaryStyle" -> (Directive[EdgeForm[{Thickness[0.003], Black}], #] & /@ {Red, Green, Yellow}), "SubsetBoundaryScale" -> {2, 2, 2, 2}, "SubsetEdge" -> False, PlotTheme -> "Classic"] 

What if mutiple edges in two vertices? And the manual way is not so nice due to the discontinued curves from different edges. Is there any clever way to do such things if the hypergraphs get more complicated? Thank you very much in advance! If something is unclear, thank you for pointing out!

added 101 characters in body
Source Link
Xuemei
  • 1.7k
  • 7
  • 10
Loading
added 101 characters in body
Source Link
Xuemei
  • 1.7k
  • 7
  • 10
Loading
edited tags
Link
Silvia
  • 27.7k
  • 3
  • 86
  • 172
Loading
added 101 characters in body
Source Link
Xuemei
  • 1.7k
  • 7
  • 10
Loading
deleted 1057 characters in body
Source Link
Xuemei
  • 1.7k
  • 7
  • 10
Loading
deleted 19 characters in body
Source Link
Xuemei
  • 1.7k
  • 7
  • 10
Loading
Source Link
Xuemei
  • 1.7k
  • 7
  • 10
Loading