Üç yollu bir venn diyagramı çizdim. Onunla çözemediğim üç konu var. çember etiketleri taşımak için kod nedirVenn3: Daireler ve etiketler nasıl yeniden konumlandırılır?
(yani "Set1", "Set 2", "Set3") şu anda bir çok uzakta daireden çünkü.
Çevrelerin üç eşit boyutta olması/daire boyutunu değiştirmesi için kod nedir?
Daireleri arsa etrafında hareket ettiren kod nedir. Şimdilik, set2 set3'ün içinde (fakat farklı şekilde renklendirilmiştir), diyagramın bir venn şemasını (yani, ortada bir miktar üst üste binmiş olan 3 ayrı daire) gösterme şeklindeki standart şekline benzemesini istiyorum.
Başka bir notta, "set_x", "set_alpha" gibi komutların ne olması gerektiğini bulmayı zor buldum; Eğer bir kişi, yukarıdaki sorulara cevap verecek bir kılavuzdan haberdar olsaydı takdir edersem, ihtiyacım olan tüm bilgileri içeren bir yer bulamadım. çember etiketleri taşımak için kod nedir
import sys
import numpy
import scipy
from matplotlib_venn import venn3,venn3_circles
from matplotlib import pyplot as plt
#Build three lists to make 3 way venn diagram with
list_line = lambda x: set([line.strip() for line in open(sys.argv[x])])
set1,set2,set3 = list_line(1),list_line(2),list_line(3)
#Make venn diagram
vd = venn3([set1,set2,set3],set_labels=("Set1","Set2","Set3"))
#Colours: get the HTML codes from the net
vd.get_patch_by_id("100").set_color("#FF8000")
vd.get_patch_by_id("001").set_color("#5858FA")
vd.get_patch_by_id("011").set_color("#01DF3A")
#Move the numbers in the circles
vd.get_label_by_id("100").set_x(-0.55)
vd.get_label_by_id("011").set_x(0.1)
#Strength of color, 2.0 is very strong.
vd.get_patch_by_id("100").set_alpha(0.8)
vd.get_patch_by_id("001").set_alpha(0.6)
vd.get_patch_by_id("011").set_alpha(0.8)
plt.title("Venn Diagram",fontsize=14)
plt.savefig("output",format="pdf")
Teşekkürler @KT., Aslında bir kez venn_unweighted hakkında benim için sorunları sıraladı; Daireleri arsa etrafında hareket ettirmem gerekmedi ve bu da sorunu etiketlerle de düzeltdi. Bu referanslara bakacağım. – Tom