5 ms·
A large collection of tools. The trick seems to be to find apps that're good at particular jobs, then compose the components drawn from those apps together int
by _Nat_ 8y ago
A large collection of tools. The trick seems to be to find apps that're good at particular jobs, then compose the components drawn from those apps together into a scene.
1. PowerPoint for composition. Unless whatever graphic you're making is simple enough to be produced by just 1 program, it's good to have a canvas-like program that you can assemble the components in. For me, that's usually PowerPoint, since it can be pretty free-form. PowerPoint slides can be embedded into Word documents as active content.
2. Equations: Word's equation editor or TeX. Other Microsoft Office products like PowerPoint and Excel have an equation editor built into them too, but those equation editors tend to be inferior to Word's. I used to copy/paste Word-equations into PowerPoint. Mathematica's an option if you're using it anyway, though it can look kinda clunky.
3. Graphs (excluding labels): Excel or a ray-tracer. For simple graphs, you can usually do them in Excel -- just have to learn the customization options (which I think folks often overlook, getting discouraged by the non-customized versions). For more complex graphs, sometimes it's just easiest to write your own ray-tracing scene. Matlab can be decent for some 3D surface figures, once you edit out its labels and replace them with better ones.
4. Labels: Word's equation editor or TeX again. While graph-creating tools can often insert labels just fine, they tend to be a bit rudimentary. So, once you make a graph, put it into PowerPoint, then insert your own axis labels and other markup by copying them from equation-editor tools. If you want to add arrows, circle something, or anything like that, then you can use PowerPoint's shapes.
5. Simple flow diagrams: Microsoft Visio or PowerPoint, depending on the kind. PowerPoint's probably better for the simplest things, but Visio scales better for larger diagrams.
6. Engineering designs: Whatever CAD you made them in. For example, I used to put chemical process schematics together in AspenTech's Aspen Plus, then copy/paste them into PowerPoint for further markup.
7. Minor tweaking: Paint, Paint.NET, etc.. If you just want to tweak a graphic or something before pasting it into PowerPoint, simple image-editing tools can let you do that.
8. Security: Write your own script. If you have some graphic that might have hidden tracking information embedded in slight pixel alterations, then you can do stuff like:
a. round pixel RGB values to the nearest 5 (or whatever);
b. merge pixels together (like Paint would if you shrink an image);
c. save as JPEG or some other lossful format;
d. randomly (using a CRNG) mutate pixel values by slight amounts to inject invisible noise.
9. Complex diagrams: Ray-tracing. Honestly I love ray-tracing stuff; it feels like a brute-force solution to just about anything you could want to draw, and if you like programming, I think it's one of those projects that you really ought to do at some point just as a matter of being well-versed in computers.
---
Overall, my big tip would be to be aware of the various tools that can do parts of the overall job well, then compose them in a general canvas-like setting like PowerPoint, and then finalize any little tweaks using an image-editor.
- Hallucinaut 8y agoI'm curious as to the scenario in which the security edits you mention could be required. Could you give any examples?
- _Nat_ 8y agoIt's probably not something most folks have to worry about. But for the sake of example, say that you download an image to be later used in a document/presentation that'll be made publicly available. The image server might choose to encode information like retrieval time, IP address, account you're logged in with, and any other tracking info it might have through cookies in an invisible watermark. Then after you post the image as part of a document/presentation, the original source can make that connection. Ideally anyone tracking you would make the tracking mark cryptographically secure such that only they can interpret it, though there's also the possibility that they'd use some other mechanism that could reveal your personal information to anyone aware of the watermarking mechanism. Alternatively, say that the image is retrieved over an insecure line, e.g. through HTTP, and, say, some country (with loose notions of civil rights) wishes to track its propagation. Then they can intercept the original image, watermark it, and serve the malicious version to you. Which such a state might wish to do if you're, say, working on a technology that they're interested in.
- TKAB 8y agoThe ray-tracing idea really sounds great! What setup are you using for this?
- _Nat_ 8y agoReally just a personal ray-tracing app. I coded it up in C# with an event-loop to update, and mouse-clicks emit a ray to hit-test against an object, allowing for interactivity. Then you can draw anything that you can programmatically describe to the ray-tracer. I mean, a scatter plot's axes can be drawn as cylinders while the points can be spheres, etc., which makes it simple enough to throw together from most quick ray-tracing tutorial projects. But what's really cool is that, once you put some objects together that form graphs and such, it's trivial to merge them with other scenes. Like, I was really interested in having a 3D walk-through of a chemical processing plant, where I could insert graphs linked to real-time data, where the graphs themselves are just part of the ray-traced scene (rather than being something like a skin on an object). So then the 3D walk-through basically has pop-up data views. But for stuff like documents, I mostly just think of ray-tracing as the brute-force solution to anything that's not more easily done using another tool. I think the first time I used it for a plain graph, I was frustrated by trying to make a plot that had both surfaces and point-bubbles in it. So, I figured, hey, surfaces can just be interpolations of sample points, and the point-bubbles can just be little spheres.