2017-09-02 4 views
1

J'ai téléchargé et je peux charger le package VennDiagram dans R. J'essaie actuellement de générer des exemples de diagrammes en utilisant ce package avec l'exemple de code fourni par les auteurs de ce paquet. Cependant, pour tout le code exemple que je tente d'utiliser, aucun graphique est généré, et la seule sortie de l'écran est:Erreur lors de la tentative de création de diagrammes Venn dans R à l'aide du package VennDiagram

[1] 1

plac le fil d'information suivante: Problems with VennDiagram?

... mais la première étape de dépannage suggérée, pour confirmer que nous pouvons dessiner l'intrigue à l'écran en assignant l'appel à venn.diagram() à une variable temporaire, puis en appelant grid.draw (temp) [code complet montré ci-dessous], résultats dans le message d'erreur

Error in UseMethod("grid.draw") : 
    no applicable method for 'grid.draw' applied to an object of class "c('double', 'numeric')" 

Mon code de test est:

library(VennDiagram); 
library(grid); 

temp <- venn.diagram(
    x = list(
     A = 1:100, 
     B = 1:10 
     ), 
    filename = "2-2_special_case_pairwise-inclusion.tiff", 
    cex = 2.5, 
    cat.cex = 2.5, 
    cat.pos = 0 
    ); 

grid.draw(temp) 

Autres discussions qui traitent ce message d'erreur indiquent que les arguments à grid.draw() devrait être modifié, mais je ne sais pas pourquoi l'exemple ci-dessus aurait été suggéré et accepté si cela n'a pas fonctionné, et la documentation grid.draw (https://www.rdocumentation.org/packages/grid/versions/3.4.1/topics/grid.draw) ne semble pas suggérer qu'une modification est requise. Les problèmes ci-dessus s'appliquent à tous les exemples fournis par les auteurs de ce package, donc ce n'est pas un problème avec un appel particulier à venn.diagram().

Merci d'avance pour tout conseil que vous pourriez avoir.

Répondre

1

temptemptemp est numérique dans votre exemple, car vous créez un fichier sur votre système de fichiers et vous obtenez un retour 1 pour vous faire savoir que cela a fonctionné.

Au lieu de donner grid.draw le numéro 1, nous allons lui donner quelque chose à tirer :)

temp <- venn.diagram(
    x = list(
    A = 1:100, 
    B = 1:10 
), 
    filename =NULL, 
    cex = 2.5, 
    cat.cex = 2.5, 
    cat.pos = 0 
); 


grid.draw(temp) 

enter image description here