U
    ¹mœdçX  ã                   @   s<   d Z ddlZddddgZdd„ Zdd„ Zd	d„ Zd
d„ ZdS )z
Famous social networks.
é    NÚkarate_club_graphÚdavis_southern_women_graphÚflorentine_families_graphÚles_miserables_graphc            
      C   sÊ   t tdƒƒ} dddddddd	d
ddddddddh}t ¡ }| | ¡ d|_d}t| d¡ƒD ]D\}}dd„ | ¡ D ƒ}t|ƒD ] \}}|dkr~|j|||d� q~q\|D ]}	|	|kr¶dnd|j	|	 d< q¦|S )a  Returns Zachary's Karate Club graph.

    Each node in the returned graph has a node attribute 'club' that
    indicates the name of the club to which the member represented by that node
    belongs, either 'Mr. Hi' or 'Officer'. Each edge has a weight based on the
    number of contexts in which that edge's incident node members interacted.

    Examples
    --------
    To get the name of the club to which a node belongs::

        >>> G = nx.karate_club_graph()
        >>> G.nodes[5]["club"]
        'Mr. Hi'
        >>> G.nodes[9]["club"]
        'Officer'

    References
    ----------
    .. [1] Zachary, Wayne W.
       "An Information Flow Model for Conflict and Fission in Small Groups."
       *Journal of Anthropological Research*, 33, 452--473, (1977).
    é"   r   é   é   é   é   é   é   é   é   é
   é   é   é   é   é   é   é   zZachary's Karate Cluba	  0 4 5 3 3 3 3 2 2 0 2 3 2 3 0 0 0 2 0 2 0 2 0 0 0 0 0 0 0 0 0 2 0 0
4 0 6 3 0 0 0 4 0 0 0 0 0 5 0 0 0 1 0 2 0 2 0 0 0 0 0 0 0 0 2 0 0 0
5 6 0 3 0 0 0 4 5 1 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 3 0
3 3 3 0 0 0 0 3 0 0 0 0 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 2 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 5 0 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 2 5 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 4 3
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2
2 0 0 0 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 5 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 2
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4
0 0 0 0 0 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2
2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1
2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 4 0 2 0 0 5 4
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 3 0 0 0 2 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 2 0 0 0 0 0 0 7 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 2
0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 3 0 0 0 0 0 0 0 0 4
0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 2
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 4 0 0 0 0 0 3 2
0 2 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3
2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 0 0 2 0 0 0 4 4
0 0 2 0 0 0 0 0 3 0 0 0 0 0 3 3 0 0 1 0 3 0 2 5 0 0 0 0 0 4 3 4 0 5
0 0 0 0 0 0 0 0 4 2 0 0 0 3 2 4 0 0 2 1 1 0 3 4 0 0 2 4 2 2 3 4 5 0Ú
c                 S   s   g | ]}t |ƒ‘qS © )Úint)Ú.0Úbr   r   úS/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/networkx/generators/social.pyÚ
<listcomp>T   s     z%karate_club_graph.<locals>.<listcomp>©ÚweightzMr. HiZOfficerZclub)
ÚsetÚrangeÚnxÚGraphÚadd_nodes_fromÚnameÚ	enumerateÚsplitÚadd_edgeZnodes)
Zall_membersZclub1ÚGZ
zacharydatÚrowÚlineZthisrowÚcolÚentryÚvr   r   r   r      s    &
$c               [   C   s@  t  ¡ } ddddddddd	d
ddddddddg}| j|dd� dddddddddddd d!d"g}| j|d#d� |  d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|gY¡ || jd}< || jd~< | S )zéReturns Davis Southern women social network.

    This is a bipartite graph.

    References
    ----------
    .. [1] A. Davis, Gardner, B. B., Gardner, M. R., 1941. Deep South.
        University of Chicago Press, Chicago, IL.
    úEvelyn JeffersonúLaura MandevilleúTheresa AndersonúBrenda RogersúCharlotte McDowdúFrances AndersonúEleanor NyeúPearl OglethorpeúRuth DeSandúVerne SandersonúMyra LiddelúKatherina RogersúSylvia AvondaleúNora FayetteúHelen LloydúDorothy MurchisonúOlivia CarletonúFlora Pricer   )Z	bipartiteÚE1ÚE2ÚE3ÚE4ÚE5ÚE6ÚE7ÚE8ÚE9ÚE10ÚE11ÚE12ÚE13ÚE14r   )r/   rA   )r/   rB   )r/   rC   )r/   rD   )r/   rE   )r/   rF   )r/   rH   )r/   rI   )r0   rA   )r0   rB   )r0   rC   )r0   rE   )r0   rF   )r0   rG   )r0   rH   )r1   rB   )r1   rC   )r1   rD   )r1   rE   )r1   rF   )r1   rG   )r1   rH   )r1   rI   )r2   rA   )r2   rC   )r2   rD   )r2   rE   )r2   rF   )r2   rG   )r2   rH   )r3   rC   )r3   rD   )r3   rE   )r3   rG   )r4   rC   )r4   rE   )r4   rF   )r4   rH   )r5   rE   )r5   rF   )r5   rG   )r5   rH   )r6   rF   )r6   rH   )r6   rI   )r7   rE   )r7   rG   )r7   rH   )r7   rI   )r8   rG   )r8   rH   )r8   rI   )r8   rL   )r9   rH   )r9   rI   )r9   rJ   )r9   rL   )r:   rH   )r:   rI   )r:   rJ   )r:   rL   )r:   rM   )r:   rN   )r;   rG   )r;   rH   )r;   rI   )r;   rJ   )r;   rL   )r;   rM   )r;   rN   )r<   rF   )r<   rG   )r<   rI   )r<   rJ   )r<   rK   )r<   rL   )r<   rM   )r<   rN   )r=   rG   )r=   rH   )r=   rJ   )r=   rK   )r=   rL   )r>   rH   )r>   rI   )r?   rI   )r?   rK   )r@   rI   )r@   rK   ÚtopÚbottom)r"   r#   r$   Zadd_edges_fromÚgraph)r)   ZwomenÚeventsr   r   r   r   _   s   
îò§ÿ]

c                  C   sü   t  ¡ } |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  dd	¡ |  dd
¡ |  d
d¡ |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  dd¡ |  d	d¡ |  d	d¡ |  dd¡ |  dd¡ | S )a  Returns Florentine families graph.

    References
    ----------
    .. [1] Ronald L. Breiger and Philippa E. Pattison
       Cumulated social roles: The duality of persons and their algebras,1
       Social Networks, Volume 8, Issue 3, September 1986, Pages 215-256
    Z
AcciaiuoliZMediciZ
CastellaniZPeruzziZStrozziZ	BarbadoriZRidolfiZ
TornabuoniZAlbizziZSalviatiZPazziZBischeriZGuadagniZGinoriZLamberteschi©r"   r#   r(   ©r)   r   r   r   r   õ   s,    	c                  C   sì  t  ¡ } | jdddd� | jdddd� | jdddd� | jddd	d� | jd
ddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jdddd� | jd ddd� | jd ddd� | jd ddd� | jd ddd� | jd ddd� | jd ddd� | jd!ddd� | jd!ddd� | jd!ddd� | jd!ddd� | jd!ddd� | jd!ddd� | jd!d dd� | jd!ddd� | jd!dd"d� | jd#d!dd� | jd#dd$d� | jd%d#d&d� | jd%d!dd� | jd%dd'd� | jd(d#dd� | jd(dd)d� | jd(ddd� | jd(d%dd� | jd*dd+d� | jd*d!dd� | jd*d%dd� | jd*d#dd� | jd*d(dd� | jd,ddd� | jd,d*dd� | jd-d!dd� | jd-d*dd� | jd-ddd� | jd.d!dd� | jd/d.dd� | jd/ddd� | jd/d!dd� | jd/d*dd� | jd0ddd� | jd1ddd� | jd1d*dd� | jd2ddd� | jd2d-dd� | jd3ddd� | jd3d2dd� | jd3d-dd� | jd4d2dd� | jd4d3dd� | jd4ddd� | jd4d-dd� | jd5d2dd� | jd5d3dd� | jd5d4dd� | jd5ddd� | jd5d-dd� | jd6d2dd� | jd6d3dd� | jd6d4dd� | jd6d5dd� | jd6ddd� | jd6d-dd� | jd7d%dd� | jd8d%dd� | jd9d#dd� | jd9d%dd� | jd:d9dd� | jd:d%dd� | jd:d#dd� | jd;ddd� | jd;d(dd� | jd;d*dd� | jd<d,dd� | jd<ddd� | jd=d,dd� | jd>d?dd� | jd@d>dd� | jd@d%dd� | jd@d*dd� | jd@ddd� | jdAd(dd� | jdAddd� | jdBdAdd� | jdBd#dd� | jdCdAd"d� | jdCd(dd� | jdCddd� | jdDdCdd� | jdDd7dd� | jdEdCdd� | jdFdCdd� | jdFdAdd� | jdFd(dd� | jdGdCd	d� | jdGdAd'd� | jdGd7dd� | jdGdFdd� | jdGd(dHd� | jdGddId� | jdGddd� | jdGd%dd� | jdGd9dd� | jdGd@dd� | jdJdAdd� | jdJdGdd� | jdKdGdd� | jdKd9dd� | jdKd@dd� | jdLdGd$d� | jdLd@d$d� | jdLd*d	d� | jdLdKdd� | jdLddd� | jdMdLdNd� | jdMdGdd� | jdMd@d	d� | jdMdKdd� | jdOd@dd� | jdOdLdd� | jdOdMdd� | jdPd@dd� | jdPdLd	d� | jdPdOdd� | jdPdMdd� | jdPdKdd� | jdPdGdd� | jdQdGd"d� | jdQdLd+d� | jdQdMd&d� | jdQd@d$d� | jdQdKdd� | jdQd9dd� | jdQdPd	d� | jdQdOdd� | jdRdMdd� | jdRd@dd� | jdRdQd	d� | jdRdKdd� | jdRdLdd� | jdRdPdd� | jdRdOdd� | jdRdGdd� | jdSdGdd� | jdSdQd'd� | jdSd@dd� | jdSdRdd� | jdSdLdd� | jdSdPd	d� | jdSdOdd� | jdSdMd"d� | jdSdKdd� | jdSddd� | jdTdRdd� | jdTdSd$d� | jdTd@dd� | jdTdQdd� | jdTdLdd� | jdTdPdd� | jdTdOdd� | jdTdMdd� | jdTdKdd� | jdTdGdd� | jdUdSdd� | jdUdLdd� | jdUdMdd� | jdUdQdd� | jdUdTdd� | jdUd@dd� | jdUdRdd� | jdUdPdd� | jdUdOdd� | jdVdKdd� | jdWd%dd� | jdWddd� | jdWd#dd� | jdWd*dd� | jdWd@dd� | jdWd9dd� | jdXd%d	d� | jdXdWd	d� | jdXddd� | jdXd#dd� | jdXd*dd� | jdXd@dd� | jdXd9dd� | jdYd%dd� | jdYdXdd� | jdYdWdd� | jdYddd� | jdYd#dd� | jdYd*dd� | jdYd9dd� | jdYdLdd� | jdZd*dd� | jdZdXdd� | jdZdWdd� | jdZdYdd� | jdZddd� | jdZd@dd� | jdZd9dd� | jdZd%dd� | jd[d(dd� | jd[d*dd� | jd[ddd� | jd\d@dd� | jd]d@dd� | jd]d\dd� | jd^dXdd� | jd^dWdd� | jd^d%dd� | jd^d@dd� | jd^d9dd� | jd^dYdd� | jd^dZdd� | jd_dSdd� | jd_dTdd� | jd_dUdd� | jd_dRdd� | jd_dQdd� | jd_d@dd� | jd_dLdd� | S )`z÷Returns coappearance network of characters in the novel Les Miserables.

    References
    ----------
    .. [1] D. E. Knuth, 1993.
       The Stanford GraphBase: a platform for combinatorial computing,
       pp. 74-87. New York: AcM Press.
    ZNapoleonZMyrielr   r   ZMlleBaptistiner   ZMmeMagloirer   r   ZCountessDeLoZGeborandZChamptercierZCravatteZCountr   ZOldManZValjeanZLabarrer	   r   Z
MargueriteZMmeDeRZIsabeauZGervaisZ	ListolierZ	Tholomyesr
   ZFameuilZBlachevilleZ	FavouriteZDahliaZZephineZFantineé	   ZMmeThenardierr   Z
Thenardierr   r   ZCosetteé   ZJavertr   ZFaucheleventZ
BamataboisZPerpetueZSimpliceZScaufflaireZWoman1ZJudgeZChampmathieuZBrevetZ
ChenildieuZCochepailleZ	PontmercyZBoulatruelleZEponineZAnzelmaZWoman2ZMotherInnocentZGribierZ	MmeBurgonZ	JondretteZGavrocheZGillenormandZMagnonZMlleGillenormandZMmePontmercyZMlleVauboisZLtGillenormandZMariusr   r   Z	BaronessTZMabeufZEnjolrasZ
Combeferreé   Z	ProuvaireZFeuillyZ
CourfeyracZBahorelZBossuetZJolyZ	GrantaireZMotherPlutarchZ	GueulemerZBabetZ
ClaquesousZMontparnasseZ	ToussaintZChild1ZChild2ZBrujonZMmeHuchelouprS   rT   r   r   r   r     s    	)Ú__doc__Znetworkxr"   Ú__all__r   r   r   r   r   r   r   r   Ú<module>   s   üQ !