Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When watching an edge table in CSV format, Cytoscape produces a warning whenever the file is saved #1

Open
Digital-ecologist opened this issue Oct 8, 2020 · 14 comments
Labels

Comments

@Digital-ecologist
Copy link

I'm trying to watch an edge table, in order to expedite adding new data to an existing network. Whenever I save the CSV file I get a warning, and my Cytoscape map doesn't seem to update.
image
Any help resolving this would be greatly appreciated
I'm not sure if any of this data will be relevant,
Windows 10 professional 64-bit version 2004
Cytoscape 3.8.1
Java version 11.0.6
Microsoft Excel 2016

@tpfau
Copy link
Owner

tpfau commented Oct 8, 2020

I currently can't test your setup (since I don't have Excel).
I guess, that Excel keeps a lock on the file while it is open (I'm not sure why it would do so but from the error I would assume that that's the issue.
IF I have some time I will try to have a look into it. Could you, in the meantime try any openoffice distribution or just a simple text editor to see if the problem also occurs with those?

@Digital-ecologist
Copy link
Author

Thanks! When I put the next set of data and I'll try with LibreofficeCalc
and then notepad++

@Digital-ecologist
Copy link
Author

So, using LibreofficeCalc I don't get the error message. But it also doesn't seem to be updating. Interestingly, I get the same behavior when I use the import from CSV function, and map using shared name. I keep having to manually add entries to the sif file, drag the updated sif file into my network group, and then import the edge table. That works, but I was hoping to streamline. Even if I update the SIF file, drag it in to the network group, and then tell file watch her to watch the CSV file it's not importing my EC50, IC50, and annotation column as expected.
What are your thoughts?

@tpfau
Copy link
Owner

tpfau commented Oct 9, 2020

This could take a bit longer as it seems to be a problem on windows (I just tested it on a ubuntu system, where I normally develop) and it works fine.
I'll see when I come to addressing this.

@tpfau tpfau added the bug label Oct 9, 2020
@tpfau
Copy link
Owner

tpfau commented Oct 9, 2020

Hmmm,
Now I'm getting confused. Running a small network sample, it initially failed on my windows machine, but now, it seems to work for some reason and I can't replicate the error any more.
It seemed (at least on my machine) that it could not access the column within cytoscape for some reason, but after some tries it now works fine.
Can you send me a output.log file from your cytoscape folder in an instance where it did not work?

@Digital-ecologist
Copy link
Author

Thanks for trying to figure this out. I've got a fair number of edge annotations I'm trying to add, so once I've got them in the CSV, I'll try to add them with file watcher and send you the log. I've also got another machine running Linux Mint 20 xfce, but I'm working from home right now, and won't be able to experiment with that until later tonight

@Digital-ecologist
Copy link
Author

I've got this in my task history, but looking back, I don't think this is the log you're looking for.
 Load Table
 Finding Table Data Reader...
 Importing Data Table...
 Loading table...

  Untitled (org.cytoscape.task.internal.export.table.CyTableWriter)

  Untitled (org.cytoscape.FileWatcher.internal.GenerateFileWatcherTask)

  Untitled (org.cytoscape.FileWatcher.internal.UpdateDataFromFileTask)

  Untitled (org.cytoscape.FileWatcher.internal.UpdateDataFromFileTask)

The hex boxes should be little blue exclamation points

@Digital-ecologist
Copy link
Author

Sorry about this, but what directory is output.log in? Went on a dig around my file system, and don't see it anywhere.

@Digital-ecologist
Copy link
Author

Okay, I've uploaded a very basic example. If I understand how this is supposed to work, adding the node table to the file watcher, and then saving the file should add nodes 6 through 11 to the node table. Then, they should appear as orphan nodes, without edges in the view. On Linux mint, I get no feedback. But the extra nodes are not added to the node table. On Windows, with this example, I am now getting this error.
image

TEST.zip

@tpfau
Copy link
Owner

tpfau commented Oct 10, 2020

The directory the output.log file is in is the installation folder of cytoscape.
As for your example:
No, FileWatcher will not add nodes to the network. It only matches data to nodes. No nodes are created.
But I will have to update this as this implementation assumed csvs to be tab separated, which they clearly aren't (if you follow the spec).
I'll create a fix for this and submit it in the coming days.

@Digital-ecologist
Copy link
Author

Thanks for your effort, and clarifying the scope of the extension. I've just added a set of additional data to some existing edges in an edge table. I have to work in Excel for this, because I'm on the work computer. The error message I'm now getting is as follows.
image

@Digital-ecologist
Copy link
Author

Follow-up, I was able to open the file in Notepad++ on my work computer. When I save that file, the error message that I get is entirely blank, it looks like that, but there's no text in it.

@Digital-ecologist
Copy link
Author

Sorry for the barrage of messages, if I close the blank error message, the edge table in Cytoscape updates as expected.

@tpfau
Copy link
Owner

tpfau commented Oct 14, 2020

No worries.
As for those errors:
Did you find the output.log file? It should be in the installation folder of Cytoscape.
Since this file is reset when Cytoscape is restarted, could you try to replicate the error and send me the output.log file after the error appears?
If no such file is created in your Program-folder, could you check, whether you have read/write access to the folder? On windows it could be, that the OS does not allow writing files into the standard program folder, so you would have to set the respective access rights.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants